図1の効果をどのように達成できるのか疑問に思います。
私がこれまでに得たのは
.box { display: inline-block; vertical-align: top; width: 100px;}
これにより、図2に示す結果が得られます(注意:float:leftでも同じことができることはわかっています)
私のHTMLコードは次のようになります。
<span class="box">A<br><br><br><br></span>
<span class="box">B<br></span>
<span class="box">C<br><br><br></span>
<span class="box">D<br><br><br></span>
<span class="box">E<br><br><br><br><br><br></span>
<span class="box">F</span>
<span class="box">G<br><br><br><br></span>
<span class="box">H<br></span>
<span class="box">I<br><br></span>
すべての要素をできるだけ左に浮かせたいのですが、その間は上に浮かせます。
純粋なCSSでこれを行うことは可能ですか、それともJavaScriptが必要ですか?
編集:
グリッド全体がページの中央に配置されることが重要です。そのため、display:inline-blockを使用しています。ウィンドウのサイズを変更するときにグリッドをリフローさせたいので、グリッドもページに固定しないでください。