@font-feature-values

Resumen

La regla-at CSS @font-feature-values permite a los autores usar un nombre común de font-variant-alternates para características activadas de distintas formas en OpenType. Permite simplificar el código CSS cuando se usan distintas fuentes.

@font-feature-values Font One { /* Cómo activar nice-style en Font One */
  @styleset {
    nice-style: 12;
  }
}

@font-feature-values Font Two { /* Cómo activar nice-style en Font Two */
  @styleset {
    nice-style: 4;
  }
}

…

.nice-look { font-variant-alternates: styleset(nice-style); } /* Independiente de la fuente */

La regla-at @font-feature-values debe ser usada en la parte superior de la hoja de estilos, pero también dentro de Grupos de reglas condicionales.

Sintaxis

Bloques de valores de características

@swash
Especifica el nombre de una característica que trabajará con la notación funcional swash() de font-variant-alternates. La definición de un valor de swash permite solo un valor: ident1: 2 es válido con ident2: 2 4 no lo es.
@annotation
Especifica el nombre de una característica que trabajará con la notación funcional annotation() de font-variant-alternates. La definición de un valor de annotation permite solo un valor: ident1: 2 es válido con ident2: 2 4 no lo es.
@ornaments
Especifica el nombre de una característica que trabajará con la notación funcional ornaments() de font-variant-alternates. La definición de un valor de ornaments permite solo un valor: ident1: 2 es válido con ident2: 2 4 no lo es.
@stylistic
Especifica el nombre de una característica que trabajará con la notación funcional stylistic() de font-variant-alternates. La definición de un valor de stylistic permite solo un valor: ident1: 2 es válido con ident2: 2 4 no lo es.
@styleset
Especifica el nombre de una característica que trabajará con la notación funcional styleset() de font-variant-alternates. La definición de un valor de stylset permite una cantidad ilimitada de valores: ident1: 2 4 12 1 corresponden a los valores OpenType ss02, ss04, ss12, ss01. Nótese que los valores superiores a 99 son válidos, pero no corresponden a ningún valor OpenType y serán ignorados.
@character-variant
Especifica el nombre de una característica que trabajará con la notación funcional character-variant() de font-variant-alternates. La definición de un valor de character-variant permite uno o dos valores: ident1: 2  corresponde a cv02=1 y ident2: 2 4 corresponde a cv02)4 e ident2: 2 4 5 no es válido.

Sintaxis formal

@font-feature-values <family-name># (en-US) {
  <feature-value-block-list>
}

where
<family-name> = <string> (en-US) | (en-US) <custom-ident> (en-US)+ (en-US)
<feature-value-block-list> = <feature-value-block>+ (en-US)

where
<feature-value-block> = <feature-type> '{ (en-US)' <feature-value-declaration-list> '}'

where
<feature-type> = @stylistic | (en-US) @historical-forms | (en-US) @styleset | (en-US) @character-variant | (en-US) @swash | (en-US) @ornaments | (en-US) @annotation
<feature-value-declaration-list> = <feature-value-declaration>

where
<feature-value-declaration> = <custom-ident> (en-US): <integer>+ (en-US);

Especificaciones

Especificación Estatus Comentarios
CSS Fonts Module Level 3
La definición de '@font-feature-values' en esta especificación.
Recommendation Definición inicial

Compatibilidad de navegadores

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help! (en-US)
Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Soporte básico ? 34 (34) [1] ? ? ?
Característica Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Soporte básico ? 34.0 (34) [1] ? ? ?

[1] Implementación experimental de las extensiones CSS Fonts Nivel 3 estaba disponible desde Gecko 24. Estaba regido por la preferencia layout.css.font-features.enabled con valor predeterminado true en Nightly y Aurora solamente.

Véase también