我正在尝试找出一种跨浏览器方法来实现无序列表的列式布局。标记来自 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 中失败):
这里期望的结果是 3 列布局(我确实得到了),其中 Item1、Item3 和 Item11 是 3 列中的顶部元素。
在 Chrome 中,它看起来膨胀:
在 Firefox 中,我在 Item1、Item3 和 Item11 上得到粗体文本