Spec-Zone.ru › CSS

font-feature-settings

The font-feature-settings CSS descriptor allows you to define the initial settings to use for the font defined by the @font-face at-rule. You can further use this descriptor to control typographic font features such as ligatures, small caps, and swashes, for the font defined by @font-face. The values for this descriptor are the same as the font-feature-settings property, except for the global keyword values.

Since this descriptor sets feature values on the font object in the @font-face at-rule and not on an entire element, only some glyphs in an element may be rendered using this descriptor.

Синтаксис

/* Use the default settings */
font-feature-settings: normal;

/* Set values for OpenType feature tags */
font-feature-settings: "smcp";
font-feature-settings: "smcp" on;
font-feature-settings: "swsh" 2;

Значения

Этот дескриптор задаётся либо ключевым словом normal , либо как список значений <feature-tag-value> , разделённых запятыми. При отрисовке текста список значений OpenType <feature-tag-value> передаётся в движок форматирования текста, чтобы включить или выключить функции шрифта.

normal

Указывает, что текст выводится с использованием стандартных настроек шрифта. Это значение по умолчанию.

<feature-tag-value>

Представляет собой кортеж, состоящий из имени тега и необязательного значения, разделённых пробелом.

Имя тега всегда является <string> четырёх ASCII символов. Если имя тега содержит меньше или больше четырёх символов или содержит символы вне диапазона кодовых точек U+20 – U+7E, дескриптор считается некорректным.

Необязательное значение может быть положительным целым числом или ключевым словом on или off. Ключевые слова on и off являются синонимами для значений 1 и 0 соответственно. Если значение не задано, значение по умолчанию – 1. Для небулевых функций OpenType (например, стилистические альтернативы) значение подразумевает выбор определённого глифа; для булевых функций значение включает или выключает функцию.

Формальное определение

Связанное правило @font-face
Начальное значение normal
Вычисленное значение как указано

Формальный синтаксис

font-feature-settings = 
normal |
<feature-tag-value>#

<feature-tag-value> =
<opentype-tag> [ <integer [0,∞]> | on | off ]?

<opentype-tag> =
<string>

Примеры

Включение глифов swash с помощью правила @font-face

В этом примере имя тега swsh и булевое значение 1 используются в качестве значения для дескриптора font-feature-settings в правиле @font-face.

HTML

<p class="swash-off">Swash is off here</p>
<p class="swash-on">Swash is on here</p>

CSS

@font-face {
  font-family: MonteCarlo;
  src: url("montecarlo-regular.woff2");
}
@font-face {
  font-family: MonteCarlo2;
  src: url("montecarlo-regular.woff2");
  font-feature-settings: "swsh" 1;
}
p {
  font-size: 3rem;
  margin: 0.7rem 3rem;
}
.swash-off {
  font-family: MonteCarlo;
}
.swash-on {
  font-family: MonteCarlo2;
}

Результат

Строка 1 показывает стандартный орнамент шрифта MonteCarlo, а строка 2 показывает, как стандартные глифы заменяются глифами swash.

Спецификации

Спецификация
CSS Fonts Module Level 4
# font-rend-desc

Совместимость с браузерами

Рабочие столы Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
font-feature-settings Нет Нет
34The ISO/IEC CD 14496-22 3rd edition suggests using the ssty feature to provide glyph variants more suitable for use in scripts (for example primes used as superscripts). Starting with Firefox 29, this is done automatically by the MathML rendering engine. The ISO/IEC CD 14496-22 3rd edition also suggests applying the dtls feature to letters when placing mathematical accents to get dotless forms (for example dotless i, j with a hat). Starting with Firefox 35, this is done automatically by the MathML rendering engine. You can override the default values determined by the MathML rendering engine with CSS.
15From Firefox 4 to Firefox 14 (inclusive), Firefox supported an older, slightly different syntax. See OpenType Font Feature support in Firefox 4.
Нет 10 Нет
34The ISO/IEC CD 14496-22 3rd edition suggests using the ssty feature to provide glyph variants more suitable for use in scripts (for example primes used as superscripts). Starting with Firefox 29, this is done automatically by the MathML rendering engine. The ISO/IEC CD 14496-22 3rd edition also suggests applying the dtls feature to letters when placing mathematical accents to get dotless forms (for example dotless i, j with a hat). Starting with Firefox 35, this is done automatically by the MathML rendering engine. You can override the default values determined by the MathML rendering engine with CSS.
15From Firefox 4 to Firefox 14 (inclusive), Firefox supported an older, slightly different syntax. See OpenType Font Feature support in Firefox 4.
Нет 10 Нет Нет

См. также

  • Другие дескрипторы @font-face: font-family, font-style, font-variation-settings, font-weight, src
  • Связанные свойства шрифта: font-feature-settings, font-variant-alternates, font-variation-settings

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-feature-settings

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API