在CSS / HTML中,使用div内的简单文本,给定字体大小(假定36px)和给定的行高36px的情况下没有边距/内边距将无法完全适合,该行的顶部始终会有一些间距。将行高降低20%(在本例中为29.8)似乎可以达到预期的效果。
为什么会这样,我是否缺少浏览器?我假设具有等于font-size的line-height实际上应该根本不在一行周围添加任何间距?
更新:我实际上得到的效果称为“半领先”。但是,我假设将行高设置为font-size时,根本不会出现任何超前现象,因为浏览器计算出的一半超前结果应为0px。
更新2:刚在CSS-Spec中找到了此内容:http://www.w3.org/TR/CSS2/visudet.html#line-height
但是,我仍然在考虑如何避免完全添加升序/降序感到困惑?
最佳答案
回应您的更新#2:
由于为每种字体计算了升/降高度,因此,像所有大写字母等宽字体一样,有些字体没有升/降。它必须是不包含任何带有a / d字符的字体。仅应用文本转换:大写不起作用。
一种回旋解决方案,但正如您所说的,这是“功能而非错误”。
关于html - 完全适合文本,不留空格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23678166/