CSS @font-face 规则的描述符 unicode-range 可用于设置使用 @font-face 规则的字体中使用的特定字符范围,并且可以提供该范围以在当前页面上使用。
当当前页面未使用指定范围内的任何字符时,不会下载字体。即使使用单个字符,也会下载完整的字体。
这个 decripor 的意义在于它让字体资源被分割,以便使浏览器下载当前页面使用的字体资源。考虑一个示例,其中站点根据其本地化使用以各种语言(字体资源)提供内容,例如希腊语、法语、英语等。因此,对于用户来说,访问其中一个字体资源将不需要其他字体资源,从而避免下载未使用的字体资源,这反过来将节省带宽。
可能的值
CSS 描述符 unicode-range 可以具有以下范围值之一:
- 单个码位:指定单个 Unicode 字符码位,例如 U+26。
- 码位范围:指定 Unicode 码位的范围,例如 U+0025-00FF,声明包含 U+0025 和 U+00FF 范围内的所有字符。
- 通配符范围:指定由通配符组成的 Unicode 码位范围,例如使用“?”字符,例如 U+4??,声明包含范围 U+400 和 U+4FF 中的所有字符。
语法
以下是指定范围的不同方法:
CSS unicode-range - 单字符字体更改
以下示例演示了如何使用 @font-face 规则的 unicode 范围描述符,每个元素的字体都不同。
在上面的示例中,字体 Arial 粗体用于 & 符号,该符号包含在 <span> 中,字体 verdana 用于 <p> 元素。