【问题标题】:Chrome search feature (ctrl+f) finds hidden text ( but it's invisible! )Chrome 搜索功能 (ctrl+f) 查找隐藏文本(但它是不可见的!)
【发布时间】:2014-02-01 07:24:23
【问题描述】:

看看这个fiddle

输入 Ctrl+F 并搜索“gets” ...

对于我来说,Chrome 会从此文本中找到不可见的文本:A long option that gets cut off

在 Linux/Ubuntu 12.04 Chrome 版本 31.0.1650.63 上重现

HTML

<!--works for a div-->
<div>
    A long option that gets cut off
</div>

<!--but not for a select-->
<select>
    <option>One - A long option that gets cut off</option>
    <option>Two - A long option that gets cut off</option>
</select>

CSS

select {
    width:100px; 
    overflow:hidden; 
    white-space:nowrap; 
    text-overflow:ellipsis;
}

div {
    border-style:solid; 
    width:100px; 
    overflow:hidden; 
    white-space:nowrap; 
    text-overflow:ellipsis;
}

如何在页面上找到文本时显示文本,而不是由浏览器突出显示的空白块?

【问题讨论】:

  • 你怎么看不到@DoorknobofSnow 的问题?就是ctrl-f 找到了应该隐藏的文本。问题大概是如何防止这种情况发生。
  • 看起来这里有 2 个问题 1) ctrl + F 在 div 上找到隐藏的文本 - 但它是不可见的(突出显示空格)和 2) ctrl + f 找不到 selct/options 元素的隐藏文本

标签: html css google-chrome styling ellipsis


【解决方案1】:

很遗憾,这是 Chrome 中的一个已知错误。

错误报告:

这是因为错误报告中提到的text-overflow: ellipsis;

自 2010 年以来,该错误没有解决方案!


避免问题...

这不是很漂亮,但它可以根据已知问题工作:

select {
    width:100px; 
    overflow:hidden; 
    white-space:nowrap;
    /* text-overflow: ellipsis; */
}

div {
    border-style:solid; 
    width:100px; 
    overflow:hidden; 
    white-space:nowrap;
    /* text-overflow: ellipsis; */
}

小提琴: http://jsfiddle.net/digitalextremist/t5eUe/228/


或者解决它...

使用 JavaScript 检测溢出,并自己插入一个省略号,作为图像(或文本块)在 div 的右侧和/或左侧,或右侧的内侧(带有更高的 @ 987654330@)等:

【讨论】:

  • 谢谢,实际上我们不能通过添加显示得到相同的结果:-webkit-box jsfiddle.net/c96jL 但我需要这 3 个点 :)
  • 用非正统修复更新了我的答案,否则你就不走运了@YuriyBugryn
  • 谢谢,@digitalextremist。我将使用 JS 来修复它。
  • 由于chrome bug已经关闭,我在bugs.chromium.org/p/chromium/issues/detail?id=1067893重新打开了
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-17
  • 2016-05-02
  • 2014-11-09
相关资源
最近更新 更多