内联块内的文本选择,中间没有 space
Text selection inside inline-blocks without space between
我在 Chrome 中选择文本时遇到问题。我有两个样式为内联块的跨度(div 也是如此)。当我尝试双击其中一个块内的文本时,所有相邻块都被选中。
可以通过在块之间至少放置一个space或换行符来解决。但是 space 将变得可见并且会破坏布局。
演示(在Chrome 58):
Firefox 在这两种情况下都能正常工作。
如何在不弄乱标记的情况下解决它?
源代码:
span {
outline: 1px solid red;
display: inline-block;
min-width: 70px;
}
<span>Apple</span><span>Orange</span>
<br/>
<br/>
<span>Lemon</span> <span>Pear</span>
您可以使用 Zero-width space:
而不是正常的 space
编辑: ..或 font-size: 0
包含正常 space.
的元素
span {
outline: 1px solid red;
display: inline-block;
min-width: 70px;
}
<span>Apple</span><span>Orange</span>
<br/>
<br/>
<span>Lemon</span>​<span>Pear</span>
<br/>
<br/>
<span>Lemon2</span><i style="font-size:0;"> </i><span>Pear2</span>
我想我明白了....
尝试添加这个:
user-select: all;
所以会是这样:
span {
outline: 1px solid red;
display: inline-block;
min-width: 70px;
user-select: all;
}
<span>Apple</span><span>Orange</span>
<br/>
<br/>
<span>Lemon</span> <span>Pear</span>
我在 Chrome 中选择文本时遇到问题。我有两个样式为内联块的跨度(div 也是如此)。当我尝试双击其中一个块内的文本时,所有相邻块都被选中。
可以通过在块之间至少放置一个space或换行符来解决。但是 space 将变得可见并且会破坏布局。
演示(在Chrome 58):
Firefox 在这两种情况下都能正常工作。
如何在不弄乱标记的情况下解决它?
源代码:
span {
outline: 1px solid red;
display: inline-block;
min-width: 70px;
}
<span>Apple</span><span>Orange</span>
<br/>
<br/>
<span>Lemon</span> <span>Pear</span>
您可以使用 Zero-width space:
而不是正常的 space编辑: ..或 font-size: 0
包含正常 space.
span {
outline: 1px solid red;
display: inline-block;
min-width: 70px;
}
<span>Apple</span><span>Orange</span>
<br/>
<br/>
<span>Lemon</span>​<span>Pear</span>
<br/>
<br/>
<span>Lemon2</span><i style="font-size:0;"> </i><span>Pear2</span>
我想我明白了....
尝试添加这个:
user-select: all;
所以会是这样:
span {
outline: 1px solid red;
display: inline-block;
min-width: 70px;
user-select: all;
}
<span>Apple</span><span>Orange</span>
<br/>
<br/>
<span>Lemon</span> <span>Pear</span>