此页面 已准备就绪

注意: WebPlatform 项目在 2012 年至 2015 年间由多个维护者支持,现已停止维护。该网站现在可在 github 上找到。

font-feature-settings

摘要

font-feature-settings 属性用于获取或设置一个或多个值,这些值指定包含 OpenType 排版功能字体的字形替换(例如连字和数字)和定位。

概述表

初始值
normal
适用范围
所有元素
继承
媒体
视觉
计算值
按指定
可动画
CSS 对象模型属性
fontFeatureSettings
百分比
N/A

语法

  • font-feature-settings: "OpenType 功能标签" 指示符
  • font-feature-settings: normal

normal
默认值。不进行字形替换或定位的更改。
“OpenType 功能标签” 指示符
此属性在其值中可以采用最多两个独立的部分。选项如下:
  • OpenType 功能标签:逗号分隔的一个或多个 OpenType 排版功能标签列表(每个标签可以有一个可选的切换开关)。有关正确语法的示例,以及最常见的功能标签及其定义的表格,请参阅 注释
  • 指示符:0 表示禁用该功能。对于布尔型功能,1 表示启用该功能。值 'on' 与 1 同义,'off' 与 0 同义。对于非布尔型功能,1 或更大的值表示功能选择索引。

示例

以下是一些显示 font-feature-settings 属性典型用途的示例。

<p class="smallcaps">Small caps</p>

<p class="ligatures">Ligatures</p>
@font-face {
    font-family: 'myMinion';
    src: url('MinionPro-Regular.otf') format('opentype');
}

body {
    font-family: myMinion;
}

p.smallcaps { font-feature-settings: "smcp" 1; }

p.ligatures{ font-feature-settings: "liga" on; }

备注

OpenType 规范定义了许多高级排版功能,字体设计者可以实现这些功能。例如,您可以定义字体的垂直定位,用连字、上下文替换、样式替换或花饰替换字形,包含一组小写大写字母等等。
每个定义的功能都有一个对应的功能标签,用于标识其功能和效果。字体开发者也可以定义自己的功能。功能的标签决定了功能的作用以及是否实现它。下表列出了一些最常见的功能标签及其定义。
有关完整的 OpenType 排版功能列表,请参阅 OpenType 排版功能标签注册表

  • kern — 字距调整
  • smcp — 小写大写字母
  • liga — 标准连字
  • dlig — 可选连字
  • ss01, ss02, ss03ss20 — 样式集合(字体特定)
  • swsh — 花饰
  • tnum — 等宽数字
  • lnum — 上排数字
  • onum — 旧式数字

如果您不熟悉上述字体功能,CSS Fonts Module Level 3 规范在第 6 节 "字体功能属性" 中对每个功能都有很好的解释和视觉示例。请注意,尽管列出的属性与可能受支持的 OpenType 排版功能相对应,但这些属性本身(font-kerningfont-variant-* 等)不受支持。

在可能的情况下,Web 作者应使用 font-variant 属性。此属性旨在处理没有其他方法可以启用或访问 OpenType 字体功能的情况下。

相关规范

CSS Fonts Module Level 3
W3C 工作草案

参见

相关文章

字体

外部资源

相关页面

署名