我有这个代码:
<p style="line-height: 1;overflow: hidden;">blah_blah</p>
<p>blah_blah</p>
<p style="line-height: 1;overflow: hidden;">qypj;,</p>
<p>qypj;,</p>Run Code Online (Sandbox Code Playgroud)
这导致(注意没有下划线和剪切字符):
也就是说,它在 Firefox(Windows 10 上的 66.0.3)中的行为方式。其他浏览器似乎呈现下划线。上面的代码片段运行器似乎也可以工作(即使在 Firefox 中),除非您在“完整页面”中运行它。
这个Q类似于添加unicode字符后文本更改高度,只是这里没有技巧。“_”只是一个简单的 ASCII 字符。
我的问题是哪种行为是正确的。是否允许特定字符更改行高(我认为它只应该与字体相关)?不应该line-height: 1暗示它可以完全适合任何文本吗?
我想有些字符是特殊的,例如在其线下方绘制的“p”、“g”、“j”(可能还有“_”)。仍然哪种行为是正确的。是否认为溢出?
PS:此外,我觉得很有趣要么 overflow-x: hidden;overflow-y: visible;和overflow-x: visible;overflow-y: hidden;还是引起了这一点。这对我来说更像是一个实际的错误。