@font-feature-values

Baseline 2023
Newly available

Since March 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

CSS @-правило @font-feature-values позволяет использовать общее имя в свойстве font-variant-alternates для функций, которые по разному активируются в OpenType. Это может помочь упростить ваш CSS при использовании нескольких шрифтов.

css
/* Правило для "хорошего стиля" в Font One */
@font-feature-values Font One {
  @styleset {
    nice-style: 12;
  }
}

/* Правило для "хорошего стиля" в Font Two */
@font-feature-values Font Two {
  @styleset {
    nice-style: 4;
  }
}/* Применение правила с единственным объявлением */
.nice-look {
  font-variant-alternates: styleset(nice-style);
}

Правило @font-feature-values может использоваться как на вернём уровне вашего CSS так и внутри любого условного CSS-правила.

Синтаксис

Блоки значений функций

@swash

Устанавливает имя функции, которая будет работать с функциональной записью swash() для font-variant-alternates. Определение значения функции swash допускает только одно значение: ident1: 2 является действительным, но ident2: 2 4 нет.

@annotation

Устанавливает имя функции, которая будет работать с функциональной записью annotation() для font-variant-alternates. Определение значения функции допускает только одно значение: ident1: 2 действительным , но ident2: 2 4 нет.

@ornaments

Устанавливает имя функции, которая будет работать с функциональной записью ornaments() для font-variant-alternates. Определение значения функции ornaments допускает только одно значение: ident1: 2 является действительным, но ident2: 2 4 нет.

@stylistic

Specifies a feature name that will work with the stylistic() functional notation of font-variant-alternates. A stylistic feature value definition allows only one value: ident1: 2 is valid, but ident2: 2 4 isn't.

@styleset

Specifies a feature name that will work with the styleset() functional notation of font-variant-alternates. A stylset feature value definition allows an unlimited number of values: ident1: 2 4 12 1 maps to the OpenType values ss02, ss04, ss12, and ss01. Note that values higher than 99 are valid, but don't map to any OpenType values and are ignored.

@character-variant

Specifies a feature name that will work with the character-variant() functional notation of font-variant-alternates. A character-variant feature value definition allows either one or two values: ident1: 3 maps to cv03=1, and ident2: 2 4 maps to cv02=4, but ident2: 2 4 5 is invalid.

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

@font-feature-values = 
@font-feature-values <family-name># { <declaration-rule-list> }

<family-name> =
<string> |
<custom-ident>+

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

Specification
CSS Fonts Module Level 4
# font-feature-values

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

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
@font-feature-values
@annotation
@character-variant
@historical-forms
@ornaments
@styleset
@stylistic
@swash

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support

Смотрите также

  • Свойство font-variant-alternates которое использует значения, определённые этим правилом.