私は現在、複数の<DIV>要素を垂直方向にソートする必要があるだけでなく、応答性を維持する必要がある設計に取り組んでいます。
例:
より広いレイアウト
背の高いレイアウト
私はフロート、インラインブロック表示を使用し、jQuery で大まかにまとめることに頼りましたが、すべての要素は水平方向に並べ替えられます。
周りを見回しても、同じ問題や解決策を持っている人は他に見つからないようです。
私は現在、複数の<DIV>要素を垂直方向にソートする必要があるだけでなく、応答性を維持する必要がある設計に取り組んでいます。
例:
私はフロート、インラインブロック表示を使用し、jQuery で大まかにまとめることに頼りましたが、すべての要素は水平方向に並べ替えられます。
周りを見回しても、同じ問題や解決策を持っている人は他に見つからないようです。
クロスブラウザのサポートについてあまり心配していない場合 (そして、準拠/最新のブラウザでよりきれいにしたい場合)、または何らかの JavaScript shim を使用して、他のブラウザでのサポートを有効にすることに満足している場合を使用column-width
して列の幅を定義し、ブラウザがそれらの列をリフローしてコンテンツに対応できるようにすることができます。
.gridbox {
display: block;
-webkit-column-width: 4em;
-moz-column-width: 4em;
-o-column-width: 4em;
-ms-column-width: 4em;
column-width: 4em;
/* aesthetics, adjust to taste,
only the above is important */
margin: 1em auto;
padding: 1em;
border: 1px solid #f90;
border-radius: 1em;
}
デモの目的で要素を使用li
したことは明らかですが、必要に応じてこれを要素に直接転送することもできます。上記の要素と同じ方法で親/コンテナーをスタイルし、子要素を好きなようにスタイルするだけです。ul
div
ul
参考文献:
HTML構造を少し変更する必要があります。そのためには、コンテンツを「グループ化」するサブコンテナをメインコンテナに含める必要があります。このようなもの:
// first example
<div id="main">
<div class="group2">
<span>1</span>
<span>2</span>
</div>
...
</div>
// second example
<div id="main">
<div class="group3">
<span>1</span>
<span>2</span>
<span>3</span>
</div>
...
</div>
cssでグループコンテナの幅を制限すると、おそらく望ましい効果が得られます。