我正在制作一个支持折行的源代码显示。虽然使用 CSS 很容易确保替换文本(“隐藏的 N 行”)不可选,但我希望隐藏的源代码仍然被选中,这样用户就可以只选择一段代码而不必担心是否由于折叠,它的一部分丢失了。有没有一种(不是太hacky的)方法来做到这一点?
最佳答案
可以选择 opacity: 0
的元素,尽管它们是不可见的。
.hidden-selectable {
display: inline-block;
width: 1px;
opacity: 0;
}
<div>Visible<span class='hidden-selectable'>selectable</span></div>
在上面的代码片段中,当周围的元素被选中时,“selectable”字符串将出现在选择和复制粘贴的文本中。
元素需要有非零的宽度和高度,否则它不会出现在选择中。此外,它必须在元素流内部(即它不能有 position: absolute
),否则,它不会出现在选择中。因此我给它一些非常小但非零的宽度,这样它就不会明显影响流量,但仍然“足够可见”以供选择。
这是 the fiddle .
以下是我尝试过但不起作用的其他方法:
显示:无
可见性:隐藏
关于html - 使不可见文本可选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11499024/