Flexboxはこのために素晴らしいです、私はJavascの束を試していた私は別のルートを見つけようとしたので、Flexboxは非常に簡単で(より良いIMOの)代替手段でした。 JSを複雑にするのではなく、CSSを使用しようとしているあなたに誇りを持ってください。
これはインターネット上で私が見つけたベストチュートリアルです。これは私があなたの靴の中にいたときに役立ちました。
正しい方向に向ける必要があります&あなたの内側の画像に最大の高さを設定することも考えてください。
ハッピーコーディングで、質問がある場合はお知らせください。
https://medium.com/@_jh3y/how-to-pure-css-masonry-layouts-a8ede07ba31a#.eule88uh2
、さらに - 親コンテナと内側の要素について理解するには、Flexのヘルパー:
https://css-tricks.com/snippets/css/a-guide-to-flexbox/
このようなものは、あなたが
<div class="flex-container">
<img class="inner-image portrait" />
<img class="inner-image landscape" />
<img class="inner-image portrait" />
<img class="inner-image landscape" />
<img class="inner-image portrait" />
<img class="inner-image landscape" />
<img class="inner-image portrait" />
<img class="inner-image landscape" />
</div>
CSSを始めるかもしれません
.flex-container {
flex-flow: row;
justify-content: space-between;
align-items: flex-start; /* should align items to the top of your flex row if they don't reach 100px in height */
}
.inner-image {
max-height: 100px;
}
.inner-image.portrait {
height: 200px;
width: 100px;
}
.inner-image.landscape {
height: 100px;
width: 200px;
}
これはテストされていませんが、概念的に正しいものでなければならず、私が含まれているリンクで理解して拡張することができます。
画像の1つのディメンションが常に同じでない限り、おそらくCSSはありません。たとえスケーリング/歪みがある場合でもそうです。 –
最新の時間私はそれのためにお金を取った – Banzay