概要
font-feature-settings
CSS プロパティは OpenType フォントの先進的なタイポグラフィの機能を制御します。
font-variant
ショートハンドプロパティまたは個別のプロパティである font-variant-ligatures
、font-variant-caps
、font-variant-east-asian
、font-variant-alternates
、font-variant-numeric
、font-variant-position
プロパティを使うべきです。このプロパティは、OpenType フォントの機能を有効にする方法やアクセスの方法が他にない、特別な状況を扱うために設計されてきました。
特に、スモールキャップの表現にこのプロパティを使うべきではありません。
初期値 | normal |
---|---|
適用対象 | 全要素. It also applies to ::first-letter and ::first-line . |
継承 | 継承する |
メディア | visual |
計算値 | 指定値 |
Animation type | discrete |
正規順序 | 形式文法で定義される一意のあいまいでない順序 |
構文
/* デフォルト設定を使用する */ font-feature-settings: normal; /* OpenType の機能タグの値を設定する */ font-feature-settings: "smcp"; font-feature-settings: "smcp" on; font-feature-settings: "swsh" 2; font-feature-settings: "smcp", "swsh" 2; /* グローバル値 */ font-feature-settings: inherit; font-feature-settings: initial; font-feature-settings: unset;
値
normal
- テキストはデフォルト設定で配置されます。
<feature-tag-value>
- テキストの描画時、OpenType の機能タグ値のリストがテキストレイアウトエンジンに渡され、フォントの機能を有効化または無効化します。タグは常に 4文字のASCII 文字の
<string>
です。文字数がこれより少ないか多い場合、もしくはコードポイント U+20 - U+7E の範囲外の文字を含む場合、プロパティ全体が無効になります。
値は正の整数です。キーワードon
とoff
はそれぞれ1
と0
の別名です。値がセットされていなければ、デフォルトは1
です。 非真偽値の OpenType 機能(例:stylistic alternates)では、この値は選ばれる特定のグリフを意味します。真偽値の機能はオンとオフを切り替えます。
形式文法
normal | <feature-tag-value>#where
<feature-tag-value> = <string> [ <integer> | on | off ]?
例
/* use small-cap alternate glyphs */ .smallcaps { font-feature-settings: "smcp" on; } /* convert both upper and lowercase to small caps (affects punctuation also) */ .allsmallcaps { font-feature-settings: "c2sc", "smcp"; } /* enable historical forms */ .hist { font-feature-settings: "hist"; } /* disable common ligatures, usually on by default */ .noligs { font-feature-settings: "liga" 0; } /* enable tabular (monospaced) figures */ td.tabular { font-feature-settings: "tnum"; } /* enable automatic fractions */ .fractions { font-feature-settings: "frac"; } /* use the second available swash character */ .swash { font-feature-settings: "swsh" 2; } /* enable stylistic set 7 */ .fancystyle { font-family: Gabriola; /* available on Windows 7, and on Mac OS */ font-feature-settings: "ss07"; }
仕様
仕様書 | 策定状況 | コメント |
---|---|---|
CSS Fonts Module Level 3 font-feature-settings の定義 |
勧告候補 |
ブラウザ実装状況
機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
基本サポート |
16.0 -webkit |
10.0 | 15.0 -webkit | 未サポート (バージョン 4.0-6.0 で部分的にサポート) |
機能 | Android | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
基本サポート | 4.4 | 48.0 (接頭辞なし) | 48.0 (接頭辞なし) | ? | 24 | 未サポート (バージョン 3.2-6.1 で部分的にサポート) |
[1] Gecko 2.0 (Firefox 4.0) から Gecko 14.0 (Firefox 14.0) まで、Gecko は古い構文をサポートしていました。構文がモダンなものと少し違います:OpenType Font Feature support in Firefox 4.
[2] ISO/IEC CD 14496-22 3rd edition は、Script Style (例えば、上付き文字として使用するプライム記号) での使用に適するよう調整された派生グリフを提供するために ssty
機能を使用するよう提案しています。Firefox 29 より、これは MathML レンダリングエンジンによって自動的に行われます。また、ドットがない書式 (例えばハットがありドットがない i や j) のために数学的なアクセントを仮定するとき、文字に dtls
機能を適用するよう提案しています。Firefox 35 より、これは MathML レンダリングエンジンによって自動的に行われます。MathML レンダリングエンジンが決めるデフォルト値は、CSS を使用してオーバーライドできます。
[3] Firefox 34 より、-moz-
接頭辞がついたプロパティは後方互換性のためだけに残されています。これは layout.css.prefixes.font-features
で制御しており、既定値は true
です。接頭辞付きのプロパティは、将来削除する予定です。
関連情報
- FontFont OpenType User Guide (pdf)
- OpenType Feature Tags list
- Using the whole font (The -moz syntax is the old one. On Gecko, use the -ms syntax but with -moz).