2

如果从 CSS 中给出以下代码:

font-family:SpecialBold;
font-weight:bold;

Firefox 双粗体(它加粗已经是粗体)。这在 Safari、Opera 或 Chrome 中似乎不是问题。我不能直接删除font-weight:bold;,因为如果托管字体出现问题,默认字体不会加粗。

我面临的问题是尝试在@font-face 上使用非网络安全的排版。我使用的字体具有特定的粗体字体。在 Chrome 等中,以下内容将不起作用:

font-family:Special;
font-weight:bold;

因为只有在使用 SpecialBold 字体时,Special 字体才能为粗体。

如何使 Firefox 不会双加粗已经粗体的字体?或者,反之亦然,我可以让 Chrome 等在使用时使用粗体字font-weight:bold吗?

4

2 回答 2

2

您可以使用此规则告诉浏览器 SpecialBold 已经是粗体,因此不需要应用合成粗体:

@font-face {
  font-family: SpecialBold;
  font-weight: bold;
  src: local(SpecialBold);
}

当然,可能需要根据您的字体名称进行修改。

于 2012-03-02T06:51:53.267 回答
1
@font-face {
    font-family: Special;
    font-style:normal;
    font-weight: normal;
    src: local(Special);
}   
@font-face {
    font-family: Special;
    font-weight: bold;
   font-style:normal;
    src: local(SpecialBold);
}

因此,您可以使用相同的字体系列名称并使用 font-weight 更改粗细,而不是使用两个不同的字体名称。请务必在您的网站上添加字体的 URL,以防您的用户没有它!

于 2012-03-05T15:15:18.600 回答