【发布时间】:2022-02-15 04:02:07
【问题描述】:
我有一个样式为overflow-x: hidden 的 div,但我发现当其中有一个包含文本的更宽 div 时,用户仍然可以用鼠标横向拖动以查看隐藏的文本。
我想防止这种情况发生并真正隐藏文本。这个 jsfiddle 应该显示我的意思:http://jsfiddle.net/YzsGF/11/ 或者这里是代码:
<div id="outer">
<div id="inner">
How can I truly hide the text beyond the margin?
</div>
</div>
#outer {
width: 150px;
height: 300px;
overflow-x: hidden;
border: 1px solid black;
}
#inner {
width: 300px;
overflow-x: hidden;
}
有没有办法阻止用户看到隐藏的文字?
更新:我需要溢出-y 才能工作:溢出-x 只是 CSS3 没关系。这可能有助于解释现实生活中的场景:
- 我有一个固定宽度但长度未知的内部 div。
- 当它足够短以适应没有 y 滚动条的外部 div 时,一切都很好。
- 当内部 div 变得足够长以至于外部 div 需要一个 y 滚动条时,会出现一个,但会切断内部 div 右侧的一些内容。这也可以(我故意留下了一些 RH 填充),但不好的是用户可以选择文本并将其拖动到侧面,从而显示空的 RH 填充并隐藏 LH 侧的一些文本。
有什么解决办法吗?
【问题讨论】:
-
视觉上这样做了,但选择副本仍然会选择你看不到的东西 - 奇怪:jsfiddle.net/mikevoermans/YzsGF/14
-
overflow-x在 IE8 及更低版本中存在问题。 -
@mikevoermans:这没什么奇怪的。实际内容不会被截断(也不应该!)。
-
javascript 是一个选项吗,文本是否应该可以选择?
-
记住 overflow-x 是一个 css3 属性。