【发布时间】:2020-07-28 17:52:43
【问题描述】:
我在使用列布局以及隐藏在 Chromium 中的溢出时遇到问题。除第一个之外的所有列中的第一个条目都缺少其文本。以下代码 sn -p 是一个最小化的示例。实际上,我会在出现相同问题的地方使用ul 和li。使用列布局,因为不知道会有多少元素或整体可用的宽度有多少。
.list {
width: 14em;
column-width: 4em;
}
.elem {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
<div class="list">
<div class="elem">First entry</div>
<div class="elem">Second entry</div>
<div class="elem">Third entry</div>
<div class="elem">Fourth entry</div>
<div class="elem">Fifth entry</div>
<div class="elem">Sixth entry</div>
</div>
此问题的“解决方案”似乎是将transform: translateZ(0); 添加到列表元素中,如下所示:
.list {
width: 14em;
column-width: 4em;
}
.elem {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
transform: translateZ(0);
}
<div class="list">
<div class="elem">First entry</div>
<div class="elem">Second entry</div>
<div class="elem">Third entry</div>
<div class="elem">Fourth entry</div>
<div class="elem">Fifth entry</div>
<div class="elem">Sixth entry</div>
</div>
但我不相信这应该是最终的解决方案。这只是一个让它以某种方式工作的“hack”。
这个问题出现在 google chrome 和新的 microsoft edge 浏览器(它们都使用 chromium 引擎)中
所以我的问题是:这里真正的问题是什么,我该如何正确地做到这一点?
【问题讨论】:
-
在当前的 Chrome(64 位 Win 10 上的 84.0.4147.105)中,您的两个示例对我来说绝对相同
-
我之前有版本 84.0.4147.89 64bit Win 10。它刚刚更新到 84.0.4147.105,我仍然看到差异。这就是我所看到的:prntscr.com/tpvjet
-
我用铬测试并重现了这个问题。它在 Edge Legacy 和 IE 中运行良好。我认为这应该是 Chrome 和 Edge Chromium 的问题。您可以在 Chrome 中报告问题 (Alt+Shift+I) 或在 Edge Chromium 中发送反馈 (Alt+Shift+I)。目前,您可以使用您的解决方案或 Baro 的解决方案作为解决方法。
标签: html css google-chrome microsoft-edge chromium