如何仅将font-face应用于特定范围的Unicode字符

Hou*_*run 4 css unicode

从数据库查询的字符串如下所示 ????????????????????? 123, Street: National Road 3, ???? ?, ?????????? ?, ?????, ??????? ??????????????«?»?

我用的是字体font-family: 'Battambang', cursive;.使用该字体的ASCII字符看起来很好,但字符串中的其他字符看起来有点麻烦.

在浏览器上呈现,它看起来像这样:

在浏览器上查看

如果我删除font-face,非Unicode字符看起来不错,但Unicode字符不会.

删除font-face

因此,我是否可以使用任何CSS技巧将字体仅应用于某些Unicode字符而不应用于其他字符?

Ry-*_*Ry- 6

由于马德望字体不包含这些字符,因此它们会回落到您指定的字体:草书.使用通常会被继承的那个.

font-family: Battambang, Roboto; /* or whatever it would be normally */
Run Code Online (Sandbox Code Playgroud)

对于字体包含要排除的字符,你还需要指定unicode-range:

@font-face {
    src: /* … */;
    font-family: Battambang;
    unicode-range: U+1780-17FF, U+200B-200C, U+25CC;
}
Run Code Online (Sandbox Code Playgroud)