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,ss03…ss20— 样式集合(字体特定)swsh— 花饰tnum— 等宽数字lnum— 上排数字onum— 旧式数字
如果您不熟悉上述字体功能,CSS Fonts Module Level 3 规范在第 6 节 "字体功能属性" 中对每个功能都有很好的解释和视觉示例。请注意,尽管列出的属性与可能受支持的 OpenType 排版功能相对应,但这些属性本身(font-kerning、font-variant-* 等)不受支持。
在可能的情况下,Web 作者应使用 font-variant 属性。此属性旨在处理没有其他方法可以启用或访问 OpenType 字体功能的情况下。
相关规范
- CSS Fonts Module Level 3
- W3C 工作草案
参见
相关文章
字体
font-feature-settings
外部资源
- Mozilla: Firefox 4: OpenType 字体功能支持
- IEBlog: CSS Corner: 使用整个字体
- FontDeck blog: 使用 CSS 3 中的 OpenType 字体功能
- Mozilla font-feature-settings: [1]
- 更多关于字体特殊字符(字形替换)的信息:[2]
相关页面
- CSSStyleDeclarationCSSStyleDeclaration
署名
Microsoft Developer Network: [Windows Internet Explorer API 参考 文章]