font-variant

The font-variant CSS property is shorthand for all font-variant subproperties.

Syntax

CSS

font-variant: value;

JS

object.style.fontVariant = "value";

Values

<'font-variant'> = normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> || [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] || [ stylistic(<feature-value-name>) || historical-forms || styleset(<feature-value-name>#) || character-variant(<feature-value-name>#) || swash(<feature-value-name>) || ornaments(<feature-value-name>) || annotation(<feature-value-name>) ] || <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero || <east-asian-variant-values> || <east-asian-width-values> || ruby || [ sub | super ] ]
normal

Resets all subproperties of font-variant to their inital value.

none

Sets font-variant-ligatures to none and resets all other font feature properties to their initial value.

<common-lig-values> = [ common-ligatures | no-common-ligatures ]
common-ligatures

Enables display of common ligatures (OpenType features: liga, clig).

no-common-ligatures

Disables display of common ligatures (OpenType features: liga, clig).

<discretionary-lig-values> = [ discretionary-ligatures | no-discretionary-ligatures ]
discretionary-ligatures

Enables display of discretionary ligatures (OpenType feature: dlig).

no-discretionary-ligatures

Disables display of discretionary ligatures (OpenType feature: dlig).

<historical-lig-values> = [ historical-ligatures | no-historical-ligatures ]
historical-ligatures

Enables display of historical ligatures (OpenType feature: hlig).

no-historical-ligatures

Disables display of historical ligatures (OpenType feature: hlig).

<contextual-alt-values> = [ contextual | no-contextual ]
contextual

Enables display of contextual alternates (OpenType feature: calt).

no-contextual

Disables display of contextual alternates (OpenType feature: calt).

small-caps

Enables display of small capitals.

all-small-caps

Enables display of small capitals for both upper and lowercase letters.

petite-caps

Enables display of petite capitals.

all-petite-caps

Enables display of petite capitals for both upper and lowercase letters.

unicase

Enables display of mixture of small capitals for uppercase letters with normal lowercase letters.

titling-caps

Enables display of titling capitals.

stylistic(<feature-value-name>)

Enables display of stylistic alternates (font specific, OpenType feature: salt <feature-index>).

historical-forms

Enables display of historical forms (OpenType feature: hist).

styleset(<feature-value-name>#)

Enables display with stylistic sets (font specific, OpenType feature: ss<feature-index> OpenType currently defines ss01 through ss20).

character-variant(<feature-value-name>#)

Enables display of specific character variants (font specific, OpenType feature: cv<feature-index> OpenType currently defines cv01 through cv99).

swash(<feature-value-name>)

Enables display of swash glyphs (font specific, OpenType feature: swsh <feature-index>, cswh <feature-index>).

ornaments(<feature-value-name>)

Enables replacement of default glyphs with ornaments, if provided in the font (font specific, OpenType feature: ornm <feature-index>). Some fonts may offer ornament glyphs as alternates for a wide collection of characters; however, displaying arbitrary characters (e.g., alphanumerics) as ornaments is poor practice as it distorts the semantics of the data. Font designers are encouraged to encode all ornaments (except those explicitly encoded in the Unicode Dingbats blocks, etc.) as alternates for the bullet character (U+2022) to allow authors to select the desired glyph using ornaments().

annotation(<feature-value-name>)

Enables display of alternate annotation forms (font specific, OpenType feature: nalt <feature-index>).

<numeric-figure-values> = [ lining-nums | oldstyle-nums ]
lining-nums

Enables display of lining numerals.

oldstyle-nums

Enables display of old-style numerals.

<numeric-spacing-values> = [ proportional-nums | tabular-nums ]
proportional-nums

Enables display of proportional numerals.

tabular-nums

Enables display of tabular numerals.

<numeric-fraction-values> = [ diagonal-fractions | stacked-fractions ]
diagonal-fractions

Enables display of lining diagonal fractions.

stacked-fractions

Enables display of lining stacked fractions.

ordinal

Enables display of letter forms used with ordinal numbers.

slashed-zero

Enables display of slashed zeros.

<east-asian-variant-values> = [ jis78 | jis83 | jis90 | jis04 | simplified | traditional ]
jis78

Enables rendering of JIS78 forms (OpenType feature: jp78).

jis83

Enables rendering of JIS83 forms (OpenType feature: jp83).

jis90

Enables rendering of JIS90 forms (OpenType feature: jp90).

jis04

Enables rendering of JIS2004 forms (OpenType feature: jp04).

simplified

Enables rendering of simplified forms (OpenType feature: smpl).

traditional

Enables rendering of traditional forms (OpenType feature: trad).

<east-asian-width-values> = [ full-width | proportional-width ]
full-width

Enables rendering of full-width variants (OpenType feature: fwid).

proportional-width

Enables rendering of proportionally-spaced variants (OpenType feature: pwid).

ruby

Enables display of ruby variant glyphs (OpenType feature: ruby). Since ruby text is generally smaller than the associated body text, font designers can design special glyphs for use with ruby that are more readable than scaled down versions of the default glyphs. Only glyph selection is affected, there is no associated font scaling or other change that affects line layout.

sub

Enables display of subscript variants.

super

Enables display of superscript variants.

Initial

normal

Examples

none

normal

small-caps

JS

Internal

font

font-family

font-size

font-stretch

font-style

font-weight

line-height

External

World Wide Web Consortium (W3C)

Home Menu