順序付けられていないリストの列レイアウトを実装するためのクロスブラウザー メソッドを見つけようとしています。マークアップは CMS から出力されるため、クラスを追加する以外に出力を変更することはできません。列を機能させることができますが、列が常に等しいとは限らないため、列の区切りも指定する必要があります。マークアップは次のようになります。
ul {
list-style: none;
}
.c3 {
-moz-column-count: 3;
-webkit-column-count: 3;
column-count: 3;
}
.colBreak {
-moz-column-break-before: always;
-webkit-column-break-before: always;
column-break-before: always;
font-weight: bold;
}
<ul class='c3'>
<li class='colBreak'>Item1</li>
<li>Item2</li>
<li class='colBreak'>Item3</li>
<li>Item4</li>
<li>Item5</li>
<li>Item6</li>
<li>Item7</li>
<li>Item8</li>
<li>Item9</li>
<li>Item10</li>
<li class='colBreak'>Item11</li>
<li>Item12</li>
<li>Item13</li>
<li>Item14</li>
</ul>
CSS (Chrome や IE/Edge でも問題なく動作しますが、Firefox では失敗します):
ここでの望ましい結果は、Item1、Item3、および Item11 が 3 列の一番上の要素である 3 列のレイアウトです (私は取得します)。
Chrome では、次のように表示されます。
Firefox では、Item1、Item3、および Item11 に太字のテキストが表示されます