blu*_*kie 5 css fonts font-size css3 viewport-units
我有一个h1我想适合视口的整个宽度,该视口由等宽字体中的13个字符组成。阅读有关视口大小的排版的CSS-Tricks文章后,如果要实现此目的似乎合乎逻辑,我只需要将h1的样式设置为:
h1 {
font-size: 13vw;
font-family: monospace;
}
Run Code Online (Sandbox Code Playgroud)
但是,这是在渲染时留下了一些空间(突出显示文本以查看空白):
(这里会有一个图像,但是我没有足够的代表,所以请单击此处获取JSFiddle)
我试过其他尺寸,font-size: 14vw;
有点太大,font-size: 13.99vw;
似乎刚刚好,但奇怪的font-size: 13.999vw;
是仍然太大吗?
有人可以解释这里发生了什么吗?为什么等宽字体中的13个字符长的字符串的每个字符都需要大于(100/13)%的视口宽度才能适合整个视口宽度?
在开始之前,我只想说,由于我在对 Stoyan Dekov 的答案的评论中提出的问题,我不会为您提供解决方法。相反,我只会回答您的问题:有人可以解释一下这里发生了什么吗?
font-size
!=width
这里的问题是您假设font-size
与 相同width
。事实并非如此。CSS 字体模块定义为font-size
:
...字体所需的字形高度。
这意味着比 更具有font-size
可比性。height
width
这也不是特定于该vw
单位的。如果您指定font-size
以像素为单位的 a,您还会注意到计算的值width
与font-size
.
但即便如此,这一切都取决于font-family
您所使用的,正如同一段继续说的那样:
对于可缩放字体,字体大小是应用于字体 EM 单位的比例因子。(请注意,某些字形可能会超出其 EM 框。)对于不可缩放字体,字体大小将转换为绝对单位并与声明的字体字体大小进行匹配,对两个字体使用相同的绝对坐标空间。匹配的值。
这里的关键词是可扩展和不可扩展。
即使使用不可缩放的字体,13vw
也不会反映每个字符的宽度。这永远不会与 一起工作,但只有当每个单独字符的长宽比与屏幕的长宽比匹配时,vw
它才可能工作。vh
归档时间: |
|
查看次数: |
377 次 |
最近记录: |