- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经在我的本地机器上安装了 Lato 字体(来自 http://www.latofonts.com)。它包含多种重量变体,例如细线、细和轻。
当我创建一个 HTML 页面并使用 CSS 选择 Lato 字体,并将 font-weight 设置为 300 时,使用的是 hairline 变体。
body {
font-family: "Lato", sans-serif;
font-weight: 300;
}
使用谷歌的网络字体,thin is used for font-weight 100, light for weight 300 .另一方面,当使用本地字体时,所有字重 < 400 都使用细线,并且无法选择细或轻的变体。
如何在本地使用细或轻变体(没有 Google 网络字体),最好只更改字体粗细?是我安装的字体有问题,还是使用有问题?
最佳答案
CSS 权重不是字体领域中正式的、真实的东西,它们只是只有 CSS 使用的约定,并且对作为字体系列一部分的字体指示的权重没有影响。这些值是 OpenType 字体的 OS/2
表中的 usWeightClass
,可以是 0 到 65355 之间的任何数字,数字完全基于设计者/类型转换厂意味着他们拥有。
因此,查看 Lato 字体,我们看到以下权重:
如果您希望在 CSS 中设置字体粗细时 CSS 做“正确的事情”,您必须将那些 CSS 字体粗细 映射到一个真实的资源(它可以有一个完全不同的 < em>实际字体粗细) 使用@font-face 规则:
/* Four different rules, for CSS weights 100, 200, 300, 400, same font name */
@font-face {
font-family: Lato;
font-weight: 100;
src: local("Lato Hairline"),
url("...latohairline.woff2") format(WOFF2);
}
@font-face {
font-family: Lato;
font-weight: 200;
src: local("Lato Thin"),
url("...latothin.woff2") format(WOFF2);
}
@font-face {
font-family: Lato;
font-weight: 300;
src: local("Lato Light"),
url("...latolight.woff2") format(WOFF2);
}
@font-face {
font-family: Lato;
font-weight: 400;
src: local("Lato Regular"),
url("...latoregular.woff2") format(WOFF2);
}
现在您的 CSS 在使用“Lato”字体系列时,将根据 CSS font-weight 属性使用正确的资源(根据您的要求)。
html, body {
font-family: Lato;
}
h1 {
font-size: 150%;
font-weight: 200;
}
p {
font-weight: 400;
}
...
(2019 年编辑:将字体更改为使用 woff2,因为那是 the only format you should use by now)。
关于css - 字体粗细为 300 的 Lato 使用细线而不是浅色变体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33454699/
我有一个格式良好的单元格范围,具有不同的边框线粗细(其中一些是中等厚度,其中一些是薄的,没有特定的图案)。我想运行一个将边框颜色更改为灰色的宏,但每次执行此操作时,它都会自动将所有边框粗细更改为 xl
我可以使用百分比使我的图像/div 具有响应性。 如何使字体大小响应不同的屏幕大小? 最佳答案 我最近偶然发现了这个问题,并为此编写了一个适合我需要的解决方案。也许您会发现您也可以将它合并到您的 CS
在 iOS 8 中,为了获得 Helvetica Neue 的细变体,以下代码可以工作 UIFont.systemFontOfSize(50, weight: UIFontWeightThin) 在
我想将 matplotlib 绘图中使用的默认字体更改为 Windows 下的 Segoe UI。我可以通过像这样改变 rcParams 来做到这一点 import matplotlib matplo
我想知道是否有人知道基于 Bresenham 的线算法或任何类似算法绘制具有特定粗细的线的任何算法。 再想一想,我一直在想,对于每个 setPixel(x,y) 我只是画一个圆圈,例如: filled
我正在尝试自定义我已经拥有的用于选择 Google 字体和更新预览 DIV 的功能之一,但是我还想添加“字体大小”、“字体粗细”、“字母间距”等,但是此功能仅在您单击“主字体选择器”组合框时才有效,我
我正在使用 RaphaelJS 在 IE8 中调试一些性能问题。我们正在 raphael 中从大约 1000 个元素和文本节点构建图形,特别是一个图形在渲染时给我们带来了问题。在 IE9 中,根据机器
我是一名优秀的程序员,十分优秀!