最新のブラウザ
最新のブラウザで順序なしリストを 2 列で表示するには、CSS3列を利用しますモジュール:
CSS:
ul { columns: 2; -webkit-columns: 2; -moz-columns: 2; }
[JSFiddle デモ](http://jsfiddle.net/HP85j/8/)
レガシー ブラウザ
Internet Explorer の場合サポート、JavaScript および DOM 操作が必要です:
HTML:
<div> <ul class="columns" data-columns="2"> <li>A</li> <li>B</li> <li>C</li> <li>D</li> <li>E</li> <li>F</li> <li>G</li> </ul> </div>
JavaScript (jQuery):
(function ($) { var initialContainer = $('.columns'), columnItems = $('.columns li'), columns = null, column = 1; // account for initial column function updateColumns() { column = 0; columnItems.each(function (idx, el) { if (idx !== 0 && idx > (columnItems.length / columns.length) + (column * idx)) { column += 1; } $(columns.get(column)).append(el); }); } function setupColumns() { columnItems.detach(); while (column++ < initialContainer.data('columns')) { initialContainer.clone().insertBefore(initialContainer); column++; } columns = $('.columns'); } $(function () { setupColumns(); updateColumns(); }); })(jQuery);
CSS:
.columns { float: left; position: relative; margin-right: 20px; }
注: 最初の JavaScript 関数は次のように列を順序付けします:
A E B F C G D
要求に従って列を並べ替えるには、 OP:
A B C D E F G
updateColumns 関数を次のように変更します:
function updateColumns() { column = 0; columnItems.each(function (idx, el) { if (column > columns.length) { column = 0; } $(columns.get(column)).append(el); column += 1; }); }
以上がCSS と JavaScript を使用して順序なしリストを 2 列で表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。