CSS 字体模块 第5级

W3C 工作草案

关于本文档的更多信息
本版本:
https://www.w3.org/TR/2024/WD-css-fonts-5-20240206/
最新发布版本:
https://www.w3.org/TR/css-fonts-5/
编辑草稿:
https://drafts.csswg.org/css-fonts-5/
历史版本:
历史记录:
https://www.w3.org/standards/history/css-fonts-5/
反馈:
CSSWG 问题库
规范内标注
编辑:
Chris LilleyW3C
前编辑:
前 Apple Inc.
建议修改此规范:
GitHub 编辑页面
Delta 规范:
测试套件:
https://wpt.fyi/results/css/css-fonts/

摘要

本规范定义了对现有 CSS Fonts 4 规范的修改以及新增特性。

CSS 是一种用于描述结构化文档(如 HTML 和 XML)在屏幕、纸张等媒介上渲染方式的语言。

本文档状态

本节描述了本文档在发布时的状态。 当前 W3C 发布的文档列表及本技术报告的最新修订版, 可在 W3C 技术报告索引 https://www.w3.org/TR/ 找到。

本文档由CSS 工作组作为工作草案(Recommendation track)发布。 作为工作草案的发布, 并不代表 W3C 及其成员的认可。

本文档为草稿,可能随时被更新、替换或废弃。 除作为正在进行的工作外,不应将本文件作为引用依据。

请通过在 GitHub 提交问题(推荐)反馈意见, 标题中请包含规范代码 “css-fonts”,格式如下: “[css-fonts] ……评论摘要……”。 所有问题和评论会被归档。 或者,也可通过(归档)公共邮件列表 www-style@w3.org 发送反馈。

本文档受 2023年11月3日 W3C 流程文件 管辖。

本文件由依据 W3C 专利政策 运作的工作组制作。 W3C 维护着与本组交付物相关的专利披露公开列表; 该页面还包括有关专利披露的说明。 任何知晓某项专利且认为该专利包含必要声明的人, 必须根据 W3C 专利政策第6节 披露相关信息。

1. 引言

CSS Fonts Level 4 规范([CSS-FONTS-4])描述了 CSS 提供的用于在文档中选择和使用字体的控制手段,包括对可变字体和彩色字体的支持。此处介绍的内容是对 CSS Fonts Level 4 中定义的属性和规则的补充或修改。

本规范目前是 CSS Fonts Level 4 规范的增量。不要假设未在此处出现的内容已经被移除。

1.1. 值定义

本规范遵循 CSS 属性定义约定,采用 [CSS2],并使用 值定义语法,参见 [CSS-VALUES-3]。本规范未定义的值类型在 CSS 值与单位 [CSS-VALUES-3] 中定义。与其他 CSS 模块结合时,这些值类型的定义可能会扩展。

除了各自定义中列出的特定属性值外,本规范定义的所有属性也接受CSS 通用关键字作为属性值。为提高可读性,未在每处重复列出。

2. 基本字体属性

w3c/csswg-drafts/126[css-fonts] 为回退字体指定参数变化

2.1. 字体族:font-family 属性

2.1.1. 通用字体族

除了 CSS Fonts Level 4 中的 CSS Fonts 4 § 2.1.3 通用字体族,本规范还定义了以下新的通用字体族。

w3c/csswg-drafts/4910[meta] [css-fonts] 通用字体族的标准
xxx
xxx 通用字体族的占位文本。
w3c/csswg-drafts/4566[css-fonts] 是否应该为额外通用字体建立注册表?

2.2. 字体粗细:font-weight 属性

w3c/csswg-drafts/2690[css-fonts-4] font-weight 百分比用于相对粗细

2.3. 字体样式:font-style 属性

w3c/csswg-drafts/4044[css-fonts] 竖排文本与 font-style 和 font-stretch 不协调

2.4. 相对字号:font-size-adjust 属性

名称: font-size-adjust
值: none | [ ex-height | cap-height | ch-width | ic-width | ic-height ]? [ from-font | <number [0,∞]> ]
初始值: none
适用对象: 所有元素和文本
继承性:
百分比: N/A
计算值: 关键字none,或一对由度量关键字和<number>组成
规范顺序: 按语法顺序
动画类型: 若关键字不同则离散,否则按计算值类型

对于任意指定的字体大小,文本的视觉尺寸和实际可读性会因字体设计的不同而变化。例如,对于拉丁或西里尔等双字母表文字,上下字母的相对高度(小写字母和大写字母的比例)是影响可读性的关键因素。在字体回退的情况下,回退字体可能与目标字体家族在关键排版度量上的比例不同,因此看起来大小有差异,且可读性可能下降。

w3c/csswg-drafts/8792[css-fonts-5] font-size-adjust: ic-height

font-size-adjust 属性为字体回退时保留文本可读性和视觉尺寸提供了一种方法。它通过调整实际字体大小,使指定的度量在不同字体下保持一致。

取值意义如下:

none
不对font-size做特殊调整。
ex-height | cap-height | ch-width | ic-width | ic-height
指定用于归一化的字体度量,默认为ex-height
ex-height
以 x-高度除以字体大小,归一化字体的纵横比值
cap-height
以大写字母高度除以字体大小,归一化 cap-height。
ch-width
以“0”(U+0030)字符的字面宽度除以字体大小,归一化字体的窄字宽。
ic-width
以“水”(U+6C34)字符的字面宽度除以字体大小,归一化字体的宽字宽。
ic-height
以“水”(U+6C34)字符的高度除以字体大小,归一化字体的宽字高。
<number [0,∞]>
每种字体的实际字号会被归一化,使所选字体度量与计算值 font-size的该比例一致。 换句话说,每个字形的实际字号 u 计算如下:
u  =  ( m / m′ ) s

其中:

s  =  计算后的 'font-size!!property'm  =  由 'font-size-adjust' 属性指定的度量
m′ =  实际字体中的度量
u  =  使用的调整后字体大小

负值无效。

from-font
计算为<number> ,对应于首个可用字体的指定度量。
测试
下例样式中定义了 Verdana 作为期望字体家族,但如果 Verdana 不可用,则会使用 Futura 或 Times。某个段落还指定了 font-size-adjust。
p {
  font-family: Verdana, Futura, Times;
}
p.adj {
  font-size-adjust: 0.545;
}

<p>Lorem ipsum dolor sit amet, ...</p>
<p class="adj">Lorem ipsum dolor sit amet, ...</p>

Verdana 的纵横比值为 0.545,意味着小写字母相对较高,因此在小字号下也比较易读。Times 的纵横比值较低,仅为 0.447,因此如果发生回退,除非同时指定 font-size-adjust,否则在小字号下文本的可读性会低于 Verdana。

注意:对于带变音符号的文本,过大的 x-高度会降低可读性,因为变音符号被压缩。

下图展示了用这些字体渲染文本的对比,列分别为 Verdana、Futura 和 Times。每行中的单元格使用相同的 font-size,并用红线表示 x-高度的差别。上半部分每行字体大小一致,下半部分除设置相同 font-size 外还设置了 font-size-adjust 为 0.545,使实际字体大小调整以保持 Verdana 的 x-高度。可见下半部分的小号文本在每行间依然较易辨识。

text with and without 'font-size-adjust'
使用与不使用 font-size-adjust 的文本对比

font-size-adjust 的取值会影响 实际 font-size,但不会影响 计算值。 因此它会影响基于字体度量的相对单位(如 exch)的大小,但不会影响 em 单位的大小。由于 line-height 的数值基于 计算后的 font-sizefont-size-adjust 也不会影响 实际 line-height

注意:由于 font-size-adjust 不影响 line-height,如果行高设置得太紧,可能导致文本行重叠。例如,当用低纵横比值的回退字体归一化为高纵横比值时,字母的上升部和下降部很可能超出行框,若设置 line-height: 1

font-size-adjust 的调整应用于所选的任何字体,但通常会基于 font-family 列表中第一个(最期望)字体的相关度量值。如果指定准确,则调整公式中的 (m/m′) 项对第一个字体为 1,此字体不做调整,其余字体会调整到一致。如果指定不准确,在不支持 font-size-adjust 的旧用户代理下,使用第一个字体渲染的文本将表现不同。

作者可以通过对比内容相同、font-size-adjust 不同的 span,计算某字体的纵横比值。如果字体大小一致,则当 font-size-adjust 值准确时,两个 span 会对齐。

使用带边框的两个 span 测量字体的 纵横比值font-size 相同,但 font-size-adjust 只设在右侧 span。可从 0.5 开始调整纵横比值,直到两个字母的边框完全对齐。

p {
  font-family: Futura;
  font-size: 500px;
}

span {
  border: solid 1px red;
}

.adjust {
  font-size-adjust: 0.5;
}

<p><span>b</span><span class="adjust">b</span></p>
Futura with an aspect value of 0.5
Futura 字体,纵横比值为 0.5

右边的盒子比左边略大,说明该字体的纵横比值小于 0.5。调整该值直到两个盒子对齐。

注意:如果指定的度量在 @font-face 中被覆盖(如通过 size-adjust),则计算 font-size-adjust 时将使用覆盖后的度量。因此,font-size-adjustsize-adjust 同时使用时,size-adjust 表现为无效。

3. 字体资源

3.1. @font-face 规则

注:描述符是按字体而不是按元素应用的。 单个元素内可以使用多种字体, 例如用于未被首个可用字体支持的字符。

3.2. 字体引用:src 描述符

3.2.1. 解析 src 描述符

src 描述符的值必须按照 CSS 语法 3 § 5.3.11 解析逗号分隔的组件值列表来解析。 然后每个组件值根据如下语法进行解析:

<url> [ format(<font-format>)]? [ tech( <font-tech>#)]? | local(<family-name>)
<font-format>= [<string> | collection | embedded-opentype | opentype
 | svg | truetype | woff | woff2 ]
<font-tech>= [<font-features-tech> | <color-font-tech>
  | variations | palettes | 
    incremental-patch | incremental-range | incremental-auto ]
<font-features-tech>= [features-opentype | features-aat | features-graphite]
<color-font-tech>= [color-COLRv0 | color-COLRv1 | color-SVG | color-sbix | color-CBDT ]

如果某个组件值被正确解析, 且是支持的CSS Fonts 4 § 11.2 字体格式CSS Fonts 4 § 11.1 字体技术, 则将其加入支持的来源列表。 如果解析组件值时出现解析错误 或其 format 或 tech 不被支持, 则不要将其加入支持的来源列表。

如果在此过程结束时没有支持的条目, 则src 描述符的值为解析错误。

这些解析规则允许在用户代理不支持某个字体技术或字体格式时实现字体的平滑降级。

例如, 当不支持增量传输时, 提供了 woff2 压缩版本的字体, 以获得最佳性能。 然后, 对于使用range-request 方法的增量传输, 提供原始未压缩的 OpenType 字体, 以便客户端 可以执行字节范围请求。
@font-face {
  font-family: "MyIncrementallyLoadedWebFont";
  src: url("FallbackURLForBrowsersWhichDontSupportIncrementalLoading.woff2") format("woff2");
  src: url("MyIncrementallyLoadedWebFont.otf") format(opentype)  tech(incremental-range);
}

3.3. 字体属性描述符:font-size

w3c/csswg-drafts/806[css-fonts-5] 为 @font-face 添加允许范围(用于光学尺寸调整)的 font-size 描述符
w3c/csswg-drafts/731[css-fonts] ex 单位的 font-size 描述符
名称: font-size
适用对象: @font-face
取值: auto | [<number>]{1,2}
初始值: auto
auto
该字体匹配任意字体大小
<number>
如果只给定一个<number>, 该字体只匹配该特定字号。 如果给定两个<number>, 它们指定一个将被匹配的字号范围。

3.4. 字形尺寸调整倍数: size-adjust 描述符

名称: size-adjust
适用对象: @font-face
取值: <percentage [0,∞]>
初始值: 100%

size-adjust 描述符定义了此字体的字形轮廓和度量的乘数, 允许作者在相同 font-size 渲染下协调不同字体的设计。

与该字体相关的所有度量(包括字形进位、基线表和 @font-face 描述符提供的覆盖) 以及渲染的字形图像都会按给定百分比缩放。 因此, 任何基于字体度量派生的值 (如 exch 单位, 或 from-font 值的 text-decoration-thickness) 也会受到影响(如果来源于该字体)。 但 计算后的 font-size (以及基于其的值, 如 em 单位、text-underline-offset 百分比等) 不受影响。

w3c/csswg-drafts/8967[css-fonts-5] font-size-adjust 与字体度量覆盖

注:size-adjust 描述符的作用类似于 font-size-adjust 属性, 本质上通过匹配 ex 高度按字体进行调整, 但同样不会影响 计算后的 font-size

测试

3.5. 行高字体度量覆盖: ascent-overridedescent-overrideline-gap-override 描述符

名称: ascent-override
适用对象: @font-face
取值: [ normal | <percentage [0,∞]> ]{1,2}
初始值: normal
名称: descent-override
适用对象: @font-face
取值: [ normal | <percentage [0,∞]> ]{1,2}
初始值: normal
名称: line-gap-override
适用对象: @font-face
取值: [ normal | <percentage [0,∞]> ]{1,2}
初始值: normal

ascent-overridedescent-overrideline-gap-override 描述符分别指定字体的上升线度量下降线度量行间距度量。 第一个值为 x 轴的取值, 第二个值为 y 轴的取值 (如省略则默认为 normal)。

normal
对应的度量值如同该描述符不存在于@font-face 块中一样, 从字体中正常获取。

注:由于某些字体格式中存在多个该类度量的来源, 这可能导致文本排版在不同 UA/平台上有所差异。

<percentage>
对应的度量值被替换为给定百分比与使用的字体大小相乘的值。
测试

font-size-adjust 属性在 size-adjust 描述符之后应用。

注:先应用 font-size-adjust 再应用 size-adjust 的结果是 size-adjust 看起来没有效果。

注:这些描述符均不会影响 计算 font-sizeline-height字体相关长度的计算。 但它们可以影响 line-height: normal 以及更一般的 行内级内容的基线对齐行为。

注:由于这些度量只适用于块轴, y 轴的取值仅在直排排版的垂直排版模式下使用。

百分比会针对不同元素的不同字体大小进行计算。
@font-face {
  font-family: overridden-font;
  ascent-override: 50%;
  ...
}

<span style="font-family: overridden-font; font-size: 20px;">
  Outer span content
  <span style="font-size: 150%;">Inner span content</span>
</span>

外层 span 使用 ascent 值为 10px,而内层 span 使用 15px。

我们可以覆盖本地回退字体的度量以匹配主字体(web 字体), 这样在从回退字体切换到主字体时可以减少布局跳动。
@font-face {
  font-family: cool-web-font;
  src: url("https://example.com/font.woff");
}

@font-face {
  font-family: fallback-to-local;
  src: local(Some Local Font);
  /* 覆盖度量值以匹配 cool-web-font */
  ascent-override: 125%;
  descent-override: 25%;
  line-gap-override: 0%;
  size-adjust: 96%;
}

<div style="font-family: cool-web-font, fallback-to-local">Title goes here</div>
<img src="https://example.com/largeimage" alt="A large image that you don’t want to shift"

当用户代理加载完成并切换到 web 字体时(假设覆盖值与 web 字体的自然度量相近),图片不会有明显的位移。

3.6. 上标与下标度量覆盖: superscript-position-overridesubscript-position-overridesuperscript-size-overridesubscript-size-override 描述符

名称: superscript-position-override
适用对象: @font-face
取值: [ normal | from-font | <percentage> ]{1,2}
初始值: normal
名称: subscript-position-override
适用对象: @font-face
取值: [ normal | from-font | <percentage> ]{1,2}
初始值: normal
名称: superscript-size-override
适用对象: @font-face
取值: [ normal | from-font | <percentage [0,∞]> ]{1,2}
初始值: normal
名称: subscript-size-override
适用对象: @font-face
取值: [ normal | from-font | <percentage [0,∞]> ]{1,2}
初始值: normal

superscript-position-overridesubscript-position-overridesuperscript-size-overridesubscript-size-override 描述符 分别指定字体的上标偏移、下标偏移、上标尺寸和下标尺寸度量, 用于 font-variant-position 需要时合成字形。 第一个值为 x 轴的取值, 第二个值为 y 轴的取值 (如省略则默认为第一个值)。

normal
UA 决定使用什么度量值, 可以来源于字体,也可以来源于某种启发式算法。
from-font
使用字体数据中的对应度量(如有)。 (如果度量缺失,则等同于 normal。)
<percentage>
对应的度量将被替换为给定百分比与使用的字体大小相乘的值。

注:由于这些度量仅适用于块轴, y 轴的取值仅在直排排版垂直排版模式下使用。

4. 字体特性属性

4.1. 字体语言覆写:font-language-override 属性

w3c/csswg-drafts/5484[css-fonts-5] 移除 font-language-override

5. 字体特性与变体解析

w3c/csswg-drafts/5635[CSS-Fonts] 需要插值可变字体设置的方法

6. 字体变体属性

6.1. 光学大小控制:font-optical-sizing 属性

w3c/csswg-drafts/5466[css-text][css-fonts] 行的光学边界

7. 安全性考虑

本规范未报告新的安全性考虑事项。

8. 隐私考虑

本规范未报告新的隐私考虑事项。

9. 致谢

首先,编辑感谢所有本模块上一版的贡献者

其次,感谢 PDFReactor 的 DerKoun、 Google 的 Xiaocheng Hu, 以及 Mozilla 的 Jonathan Kew, 对 Level 5 版本改进的贡献。

10. 变更记录

10.1. 2021年12月21日 WD 以来的变更

10.2. 2021-07-29 WD 以来的变更

10.3. 2021-06-29 FPWD 以来的变更

一致性

文档约定

一致性要求通过描述性断言和 RFC 2119 术语的组合来表达。规范性部分中的关键字“MUST”、“MUST NOT”、“REQUIRED”、“SHALL”、“SHALL NOT”、“SHOULD”、“SHOULD NOT”、“RECOMMENDED”、“MAY”和“OPTIONAL”应按照 RFC 2119 的说明进行解释。 但是,为了可读性,这些词在本规范中不会全部用大写字母出现。

本规范中的所有文本均为规范性内容,除非明确标记为非规范性、示例和注释部分。[RFC2119]

本规范中的示例以“for example”开头或通过 class="example" 与规范性文本区分开来,例如:

这是一个信息性示例。

信息性注释以“Note”开头,并通过 class="note" 与规范性文本区分,例如:

注:这是一个信息性注释。

规范性建议为规范性部分,具有特殊显示风格,并通过 <strong class="advisement"> 与其他规范性文本区分,例如: 用户代理必须提供可访问的替代方案。

测试

与本规范内容相关的测试可记录在如本块所示的“Tests”区块中。所有此类区块均为非规范性内容。


一致性类别

本规范的一致性定义了三种一致性类别:

样式表
一个CSS 样式表
渲染器
一个UA,可解析样式表语义并渲染 使用这些样式表的文档。
编辑工具
一个UA,可编写样式表。

样式表若其所有使用本模块定义语法的声明均符合通用 CSS 语法和本模块定义的各特性语法,则视为符合本规范。

渲染器若在按相关规范解析样式表的基础上,正确解析本规范定义的所有特性并据此渲染文档,则视为符合本规范。但如因设备限制无法正确渲染文档,UA 并不因此不符合规范。(例如,UA 不要求在单色显示器上渲染颜色。)

编辑工具若其编写的样式表在语法上符合通用 CSS 语法及本模块各特性语法,且满足本模块对样式表的其他一致性要求,则视为符合本规范。

部分实现

为使作者能利用向前兼容的解析规则指定回退值,CSS 渲染器必须将所有不支持的 at-规则、属性、属性值、关键字和其他语法结构视为无效(并按需忽略)。特别地,用户代理不得在多值属性声明中有选择地忽略不支持的组件值而保留支持的值:如有任何值被认为无效(即不支持的值),CSS 要求整个声明被忽略。

不稳定与专有特性的实现

为避免与将来稳定 CSS 特性发生冲突,CSSWG 建议遵循最佳实践来实现不稳定特性和专有扩展

非实验性实现

一旦规范进入候选推荐阶段(CR),即可进行非实验性实现,且实现者应发布任何被证明按规范正确实现的 CR 级特性的无前缀实现。

为确保各实现间 CSS 的互操作性,CSS 工作组要求非实验性 CSS 渲染器在发布任何 CSS 特性的无前缀实现前,向 W3C 提交实现报告(如有必要,还包括测试用例)。提交给 W3C 的测试用例将由 CSS 工作组审核和修正。

有关提交测试用例和实现报告的更多信息,可参阅 CSS 工作组网站 https://www.w3.org/Style/CSS/Test/。 如有问题,请联系 public-css-testsuite@w3.org 邮件列表。

索引

本规范定义的术语

外部引用定义的术语

参考文献

规范性引用

[CSS-CASCADE-5]
Elika Etemad; Miriam Suzanne; Tab Atkins Jr.. CSS Cascading and Inheritance Level 5. 2022年1月13日. CR. URL: https://www.w3.org/TR/css-cascade-5/
[CSS-FONTS-4]
John Daggett; Myles Maxfield; Chris Lilley. CSS Fonts Module Level 4. 2021年12月21日. WD. URL: https://www.w3.org/TR/css-fonts-4/
[CSS-INLINE-3]
Dave Cramer; Elika Etemad. CSS Inline Layout Module Level 3. 2023年4月1日. WD. URL: https://www.w3.org/TR/css-inline-3/
[CSS-SYNTAX-3]
Tab Atkins Jr.; Simon Sapin. CSS Syntax Module Level 3. 2021年12月24日. CR. URL: https://www.w3.org/TR/css-syntax-3/
[CSS-TEXT-DECOR-4]
Elika Etemad; Koji Ishii. CSS Text Decoration Module Level 4. 2022年5月4日. WD. URL: https://www.w3.org/TR/css-text-decor-4/
[CSS-VALUES-3]
Tab Atkins Jr.; Elika Etemad. CSS Values and Units Module Level 3. 2022年12月1日. CR. URL: https://www.w3.org/TR/css-values-3/
[CSS-VALUES-4]
Tab Atkins Jr.; Elika Etemad. CSS Values and Units Module Level 4. 2023年12月18日. WD. URL: https://www.w3.org/TR/css-values-4/
[CSS2]
Bert Bos 等. 层叠样式表 2级修订1(CSS 2.1)规范. 2011年6月7日. REC. URL: https://www.w3.org/TR/CSS21/
[CSS22]
Bert Bos. 层叠样式表 2级修订2(CSS 2.2)规范. 2016年4月12日. WD. URL: https://www.w3.org/TR/CSS22/
[RFC2119]
S. Bradner. Key words for use in RFCs to Indicate Requirement Levels. 1997年3月. Best Current Practice. URL: https://datatracker.ietf.org/doc/html/rfc2119

补充性引用

[CSS-DISPLAY-3]
Elika Etemad; Tab Atkins Jr.. CSS Display Module Level 3. 2023年3月30日. CR. URL: https://www.w3.org/TR/css-display-3/
[CSS-WRITING-MODES-4]
Elika Etemad; Koji Ishii. CSS Writing Modes Level 4. 2019年7月30日. CR. URL: https://www.w3.org/TR/css-writing-modes-4/

属性索引

名称 取值 初始 适用对象 继承 %ages 动画类型 规范顺序 计算值
font-size-adjust none | [ ex-height | cap-height | ch-width | ic-width | ic-height ]? [ from-font | <number [0,∞]> ] none 所有元素和文本 N/A 如关键字不同则离散,否则按计算值类型 按语法 关键字 none,或度量关键字与 <number> 的组合

@font-face 描述符

名称 取值 初始
ascent-override [ normal | <percentage [0,∞]> ]{1,2} normal
descent-override [ normal | <percentage [0,∞]> ]{1,2} normal
font-size auto | [<number>]{1,2} auto
line-gap-override [ normal | <percentage [0,∞]> ]{1,2} normal
size-adjust <percentage [0,∞]> 100%
subscript-position-override [ normal | from-font | <percentage> ]{1,2} normal
subscript-size-override [ normal | from-font | <percentage [0,∞]> ]{1,2} normal
superscript-position-override [ normal | from-font | <percentage> ]{1,2} normal
superscript-size-override [ normal | from-font | <percentage [0,∞]> ]{1,2} normal

问题索引

w3c/csswg-drafts/126[css-fonts] 指定回退字体参数的变化
w3c/csswg-drafts/4910[meta] [css-fonts] 通用字体族的判定标准
w3c/csswg-drafts/4566[css-fonts] 是否应为额外通用字体设立注册表?
w3c/csswg-drafts/2690[css-fonts-4] font-weight 的百分比用于相对权重
w3c/csswg-drafts/4044[css-fonts] 竖排文本与 font-style、font-stretch 不兼容
w3c/csswg-drafts/8792[css-fonts-5] font-size-adjust: ic-height
w3c/csswg-drafts/6384[css-fonts-5] font-size-adjust 缺少度量的情况
w3c/csswg-drafts/6384[css-fonts-5] font-size-adjust 缺少度量的情况
w3c/csswg-drafts/806[css-fonts-5] 为 @font-face 添加允许范围(用于光学尺寸调整)的 font-size 描述符
w3c/csswg-drafts/731[css-fonts] ex 单位的 font-size 描述符
w3c/csswg-drafts/8967[css-fonts-5] font-size-adjust 与字体度量覆盖
w3c/csswg-drafts/5484[css-fonts-5] 移除 font-language-override
w3c/csswg-drafts/5635[CSS-Fonts] 需要插值可变字体设置的方法
w3c/csswg-drafts/5466[css-text][css-fonts] 行的光学边界