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

发布于 2024-07-20 02:34:27 字数 442 浏览 4 评论 0原文

对浏览器(任何浏览器)如何计算 emspace 和 enspace 感到困惑,因为它发生在所有浏览器中。 这是发生的事情: 我正在使用一种名为 Gentium 的免费字体。 字体大小为 16px 行高为 19px

一切看起来都很好。 不间断空格 -   不是问题 - 作为字符存在于字体中。 薄空间 也工作正常。

但如果我尝试使用:   (#8194) 或者   (#8195)

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

谢谢。

Confused about how the browser - any browser - because it's happening in all, goes about calculating emspace and enspace.
Here's what's happening:
I am using a free font called Gentium.
font-size is 16px
line-height is 19px

All looks fine. Non breaking spaces -   not a problem - that exists in the font as a character.
thinspace   also working OK.

But if I try to use:
  (#8194)
or
  (#8195)

The browser does create a space appr the correct width, but there seems to be a height to it, as well, and the whole line of text gets pushed downward despite the CSS line-height rule.
Anybody know what's going on? Chars #8194 and #8195 aren't usually included as part of the font file. How does the browser calculate it? (Usually it works fine.) Where does it pull the character from if it's missing from the font file?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不…忘初心 2024-07-27 02:34:27

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

To the browser it's surely just another character ... and, being pulled from some font file ... which apparently doesn't have the same metrics (e.g. line height) as your Gentium font.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文