我正在使用具有列数和列间距属性的ol元素来显示2列中的列表。每个列表项都有一个向右浮动的span元素,对于某些项目(例如下图中的3和4)不会显示。
Firefox column floated right issue image
.list {
column-count: 2;
column-gap:60px;
}
.close {
float: right;
}

<ol class="list">
<li>Test 1
<span class="close">×</span>
</li>
<li>Test 2
<span class="close">×</span>
</li>
<li>Test 3
<span class="close">×</span>
</li>
<li>Test 4
<span class="close">×</span>
</li>
<li>Test 5
<span class="close">×</span>
</li>
</ol>
&#13;
我使用的是Firefox Quantum 58.0.2(64位),并尝试过最新的Chrome,Edge和Opera。
答案 0 :(得分:1)
将Firefox降级到版本55.0并解决了问题。我在这里向mozilla报告了这个错误:https://bugzilla.mozilla.org/show_bug.cgi?id=1441048
答案 1 :(得分:0)
对我来说,这似乎是一个错误。我可以想象至少有两个修复:
这是一个hacky解决方法:
.list {
column-count: 2;
column-gap: 60px;
}
.list > li:last-child {
visibility: hidden;
}
.close {
float: right;
}
<ol class="list">
<li>Test 1
<span class="close">×</span>
</li>
<li>Test 2
<span class="close">×</span>
</li>
<li>Test 3
<span class="close">×</span>
</li>
<li>Test 4
<span class="close">×</span>
</li>
<li>Test 5
<span class="close">×</span>
</li>
<li></li>
</ol>
我认为,这是更好的解决方案:
.list {
column-count: 2;
column-gap:60px;
}
.list > li {
position:relative;
}
.close {
position: absolute;
right: 0;
}
<ol class="list">
<li>Test 1
<span class="close">×</span>
</li>
<li>Test 2
<span class="close">×</span>
</li>
<li>Test 3
<span class="close">×</span>
</li>
<li>Test 4
<span class="close">×</span>
</li>
<li>Test 5
<span class="close">×</span>
</li>
</ol>