为什么emspace或enspace打破了HTML中的CSS字体行高?

时间:2009-05-21 05:34:51

标签: html css fonts spaces

混淆浏览器 - 任何浏览器 - 因为它发生的一切,都是关于计算emspace和enspace的。 这是发生了什么: 我使用的是一种名为Gentium的免费字体。 font-size是16px 行高为19px

一切看起来都很好。非破坏空间 - & nbsp;不是问题 - 字体中存在的字符。 thinspace& thinsp;也工作正常。

但如果我尝试使用: &安培; ensp; (#8194) 要么 &安培; EMSP; (#8195)

浏览器确实创建了一个正确宽度的空间appr,但它似乎也有一个高度,尽管有CSS行高规则,整行文本仍被向下推。 谁知道发生了什么事?字符#8194和#8195通常不包含在字体文件中。浏览器如何计算它? (通常它工作正常。)如果字符文件中缺少字符,它会从哪里拉出字符?

感谢。

1 个答案:

答案 0 :(得分:3)

对于浏览器来说,它肯定只是另一个角色...而且,从某些字体文件中拉出来......显然没有与你的Gentium字体相同的指标(例如行高)。