CSS:如何将给定字体映射到给定的字重?

3

我需要给特定的字重分配字体。

AvenirNext-Regular是我想要的基准字体。但是,当加粗时,结果并不是我想要的:AvenirNext-Bold太重了。我想使用AvenirNext-DemiBold。

有没有一种简便的方法可以将Semibold(或我需要的任何字体)分配给font-weight:bold属性?

[编辑] 我尝试探索以下内容,但是否有办法为现有的font-face添加src?

@font-face { font-family: "AvenirNext-DemiBold"; font-weight: bold; }


可能使用文本阴影。 - G-Cyrillus
2个回答

2
将你的半粗体字体用于所有font-weight: bold的分配,只需在CSS中搜索并替换bold600(或任何值相当于您的半粗体字体)。这仅在族群中包含半粗体版本的字体时才有效(即,由浏览器下载或已在用户的PC上)。
在CSS中,bold实际上是一个可变关键字,直接映射到700的字重。 normal转换为400,还有一些其他的,正如您可以在下面的文章中看到的那样:

CSS-Tricks文章关于字重

PS-虽然不是必需的,但为了控制,我认为最好使用字重值而不是使用英语单词。

0

您可以使用font-weight: 600;来设置半粗体。

但是我可能错了,这个问题似乎更与您加载到页面上的自定义字体有关,因为我注意到了"AvenirNext-Regular"和"AvenirNext-Bold"。

正如您所说,您想要DemiBold - 是否有这样的自定义字体,其中重量嵌入到字体中?

希望这可以帮助您。


这样做会使设置任意字体系列变得不可能,因为您必须知道是否有半粗体版本可用。我真的想将特定字体附加到粗体,并且不需要更改HTML/CSS代码。 - Stéphane de Luca

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接