CSS - font-variant

The font-variant property acts as a shorthand for the longhand properties: font-variant-caps, font-variant-numeric, font-variant-alternates, font-variant-ligatures, and font-variant-east-asian. You can also set the CSS Level 2 (Revision 1) values of font-variant, (that is, normal or small-caps), by using the font shorthand.

Example

 

HTML

HTML
<p class="normal">Firefox rocks!</p>
<p class="small">Firefox rocks!</p>

CSS

CSS
p.normal {
    font-variant: normal;
}
p.small {
    font-variant: small-caps;
}

Result

Syntax  

CSS
font-variant: small-caps;
font-variant: common-ligatures small-caps;

/* Global values */
font-variant: inherit;
font-variant: initial;
font-variant: unset;

Values

normal
Specifies a normal font face; each of the longhand properties has an initial value of normal. Longhand properties of font-variant are: font-variant-caps, font-variant-numeric, font-variant-alternates, font-variant-ligatures, and font-variant-east-asian.
none
Sets the value of the font-variant-ligatures to none and the values of the other longhand property as normal, their initial value.
<common-lig-values>, <discretionary-lig-values>, <historical-lig-values>, <contextual-alt-values>
Specifies the keywords related to the font-variant-ligatures longhand property. The possible values are: common-ligatures, no-common-ligatures, discretionary-ligatures, no-discretionary-ligatures, historical-ligatures, no-historical-ligatures, contextual, and no-contextual.
stylistic()historical-forms, styleset(), character-variant(), swash(), ornaments(), annotation()
Specifies the keywords and functions related to the font-variant-alternates longhand property.
small-caps, all-small-caps, petite-caps, all-petite-caps, unicase, titling-caps
Specifies the keywords and functions related to the font-variant-caps longhand property.
<numeric-figure-values>, <numeric-spacing-values>, <numeric-fraction-values>, ordinal, slashed-zero
Specifies the keywords related to the font-variant-numeric longhand property. The possible values are:  lining-nums, oldstyle-nums, proportional-nums, tabular-nums, diagonal-fractions, stacked-fractions, ordinal, and slashed-zero.
<east-asian-variant-values>, <east-asian-width-values>, ruby
Specifies the keywords related to the font-variant-east-asian longhand property. The possible values are: jis78, jis83, jis90, jis04, simplified, traditional, full-width, proportional-width, ruby.

Formal syntax

CSS
normal <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> none <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> <a href="css/font-variant#common-lig-values"><common-lig-values></a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> <a href="css/font-variant#discretionary-lig-values"><discretionary-lig-values></a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> <a href="css/font-variant#historical-lig-values"><historical-lig-values></a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> <a href="css/font-variant#contextual-alt-values"><contextual-alt-values></a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> stylistic( <a href="css/font-variant#feature-value-name"><feature-value-name></a> ) <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> historical-forms <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> styleset( <a href="css/font-variant#feature-value-name"><feature-value-name></a><a href="css/value_definition_syntax#hash_mark_(.23)" title="Hash mark">#</a> ) <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> character-variant( <a href="css/font-variant#feature-value-name"><feature-value-name></a><a href="css/value_definition_syntax#hash_mark_(.23)" title="Hash mark">#</a> ) <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> swash( <a href="css/font-variant#feature-value-name"><feature-value-name></a> ) <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> ornaments( <a href="css/font-variant#feature-value-name"><feature-value-name></a> ) <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> annotation( <a href="css/font-variant#feature-value-name"><feature-value-name></a> ) <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> small-caps <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> all-small-caps <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> petite-caps <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> all-petite-caps <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> unicase <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> titling-caps <a href="css/value_definition_syntax#brackets" title="Brackets">]</a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> <a href="css/font-variant#numeric-figure-values"><numeric-figure-values></a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> <a href="css/font-variant#numeric-spacing-values"><numeric-spacing-values></a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> <a href="css/font-variant#numeric-fraction-values"><numeric-fraction-values></a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> ordinal <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> slashed-zero <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> <a href="css/font-variant#east-asian-variant-values"><east-asian-variant-values></a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> <a href="css/font-variant#east-asian-width-values"><east-asian-width-values></a> <a href="css/value_definition_syntax#double_bar" title="Double bar">||</a> ruby <a href="css/value_definition_syntax#brackets" title="Brackets">]</a> <p>where <br><code><common-lig-values> = <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> common-ligatures <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> no-common-ligatures <a href="css/value_definition_syntax#brackets" title="Brackets">]</a><br><discretionary-lig-values> = <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> discretionary-ligatures <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> no-discretionary-ligatures <a href="css/value_definition_syntax#brackets" title="Brackets">]</a><br><historical-lig-values> = <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> historical-ligatures <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> no-historical-ligatures <a href="css/value_definition_syntax#brackets" title="Brackets">]</a><br><contextual-alt-values> = <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> contextual <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> no-contextual <a href="css/value_definition_syntax#brackets" title="Brackets">]</a><br><feature-value-name> = IDENT<br><numeric-figure-values> = <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> lining-nums <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> oldstyle-nums <a href="css/value_definition_syntax#brackets" title="Brackets">]</a><br><numeric-spacing-values> = <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> proportional-nums <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> tabular-nums <a href="css/value_definition_syntax#brackets" title="Brackets">]</a><br><numeric-fraction-values> = <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> diagonal-fractions <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> stacked-fractions <a href="css/value_definition_syntax#brackets" title="Brackets">]</a><br><east-asian-variant-values> = <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> jis78 <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> jis83 <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> jis90 <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> jis04 <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> simplified <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> traditional <a href="css/value_definition_syntax#brackets" title="Brackets">]</a><br><east-asian-width-values> = <a href="css/value_definition_syntax#brackets" title="Brackets">[</a> full-width <a href="css/value_definition_syntax#single_bar" title="Single bar">|</a> proportional-width <a href="css/value_definition_syntax#brackets" title="Brackets">]</a></code></p>

Description  

The font-variant property acts as a shorthand for the longhand properties: font-variant-caps, font-variant-numeric, font-variant-alternates, font-variant-ligatures, and font-variant-east-asian. You can also set the CSS Level 2 (Revision 1) values of font-variant, (that is, normal or small-caps), by using the font shorthand.

Initial valuenormal
Applies toall elements. It also applies to ::first-letter and ::first-line.
Inheritedyes
Mediavisual
Computed valueas specified
Animation typediscrete
Canonical orderthe unique non-ambiguous order defined by the formal grammar

Browser Compatibility  

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 1.0 1.0 (1.0) 4.0 3.5 1.0 (85)
ßSS ? 1.0 (1.7 or earlier) ? ? ?
iİ and ıI No support 14 (14) ? ? No support
Greek accented letters No support 15 (15) No support No support No support
CSS Font L3 version (shorthand) ? 34 (34) [1] ? ? 9.1
Feature Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support ? ? ? ? ?
ßSS No support ? ? ? ?
iİ and ıI No support 14.0 (14) ? ? No support
Greek accented letters No support No support No support No support No support
CSS Font L3 version (shorthand) ? 34.0 (34) [1] ? ? 9.3

[1] Experimental implementation of the CSS Fonts Level 3 extensions was available since Gecko 24. It was governed by the preference layout.css.font-features.enabled defaulting to true on Nightly and Aurora only.

See Also  

Specifications  

Specification Status Comment
CSS Fonts Module Level 3
The definition of 'font-variant' in that specification.
Candidate Recommendation Made it a shorthand of the new font-variant-* properties.
CSS Level 2 (Revision 1)
The definition of 'font-variant' in that specification.
Recommendation No change
CSS Level 1
The definition of 'font-variant' in that specification.
Recommendation Initial definition

License

© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/css/font-variant

CSS CSS Fonts CSS Property Reference