首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何区分字体粗细属性和字体兼容性

问如何区分字体粗细属性和字体兼容性
EN

Stack Overflow用户
提问于 2017-02-18 13:42:56
回答 2查看 1K关注 0票数 1

所以我假设对于所有可能的font-weight值,所有字体都支持它们。然而,根据here发现的规范,这是错误的,其中它说“九种字体权重不能依赖。这些权重取决于可用的字体的权重子集。”并在这个doodle中举例说明,其中似乎只有对字体monospace的正常和粗体支持(任何<=500看起来都是正常的)。那么,我们如何判断一个给定字体支持多少个font-weight级别呢?

EN

回答 2

Stack Overflow用户

发布于 2017-02-20 02:32:45

事实上,“九种字体粗细”纯粹是CSS的东西,实际上并不是任何字体规范中正式存在的东西。此外,任何字体目前只能模拟一个粗细( OpenType规范刚刚更新了可变尺寸,这将需要一段时间才能a)细化为“这是正确的方法”规范,b)使其成为浏览器),所以如果你想要所有9个支持的粗细,你需要9个字体,并且对于每一个,你需要告诉CSS它映射到哪个粗细,因为字体的内部粗度值在任何方式下都不需要与CSS选择的字体粗细数字匹配。

如果你依赖系统字体的名称,或者你依赖“甚至不是字体”通过使用类别关键字如monospace,那么你就不走运了:几乎没有字体可以运行完整的CSS字体宽度范围。

所以:如果你想要真正的控制和所有的权重:使用一个你知道拥有所有9个权重的Web字体,并使用一些合理的@font-face规则进行限制。这将需要一些努力来验证它们对你的作用,但一旦你这样做了,你就可以保证它将在每一个(现代的)浏览器上,在每个操作系统上工作。

票数 1
EN

Stack Overflow用户

发布于 2017-02-18 15:55:27

如果您使用的是google字体,文档中会清楚地说明可用的字体粗细,例如:

https://fonts.google.com/specimen/Roboto

至于内置字体,我不确定是否有办法。有关浏览器如何处理不支持的字体粗细的更多信息可在此处找到:

https://css-tricks.com/almanac/properties/f/font-weight/

希望这能有所帮助:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42311532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档