特殊字符上的后备字体

时间:2012-07-09 13:02:35

标签: css fonts font-face

我想知道在使用@ font-face时是否可以使用后备设置,以便如果我的页面上的文本包含字体中未考虑的字符(例如日语字符),则只有那些字符以基本字体显示,其他每个字符都保留为自定义字体?

我想象有可能在一个段落中混合使用两种字体。

2 个答案:

答案 0 :(得分:18)

您所描述的是浏览器的默认行为 - 它应该自然地回退到缺少字符的基本字体。

但是,有时自定义字体会使用空​​白字符,在这种情况下,您可以尝试使用unicode-range

例如:

@font-face {
    font-family: BBCBengali;
    src: url(fonts/BBCBengali.ttf) format("opentype");
    unicode-range: U+00-FF;
}

摘自这篇有趣的文章:Creating Custom Font Stacks with Unicode-Range

不幸的是有浏览器支持问题。

答案 1 :(得分:6)

如果指定的字体不包含字符,则CSS具有默认的系统字体回退。 您还可以指定要回退的字体。

serif字体的示例:

body {
    font-family: "MyNiceFontWithoutJapanesChars", "common serif font", serif;
}

只要后备字体具有您的默认字体未命中的那些字符,您应该没事。