font-variant-alternatesBaseline · Widely available
The font-variant-alternates CSS property, along with the @font-feature-values at-rule, chooses when to use a font's alternate glyphs.
Supported in all major browsers for at least 30 months — safe to use without fallbacks. Baseline since Mar 13, 2023. Widely available since Sep 13, 2025.
Browser support
DesktopChrome
1–110Not supported
111+Supportedsince Mar 7, 2023
Current: 155Edge
12–110Not supported
111+Supportedsince Mar 13, 2023
Current: 154Firefox
1–33Not supported
34+Supportedsince Dec 1, 2014
Current: 157Safari
1–9Not supported
9.1+Supportedsince Mar 21, 2016
Current: 27MobileChrome Android
18–110Not supported
111+Supportedsince Mar 7, 2023
Current: 155Firefox Android
4–33Not supported
34+Supportedsince Dec 1, 2014
Current: 157Safari iOS
1–9Not supported
9.3+Supportedsince Mar 21, 2016
Current: 27How to use
This feature is Baseline widely available — use it freely, no fallback needed.
Example
Full syntax and examples are on MDN: CSSFontFeatureValuesMap.
Feature detection
CSS · check before using
@supports (font-variant-alternates: initial) {
/* styles that rely on font-variant-alternates */
}
/* or in JavaScript */
if (CSS.supports("font-variant-alternates", "initial")) {
// use it
}Specification
Usage share
Sub-features
Support for each part of the feature (37). The overall table above shows when the whole feature works.
| Sub-feature | Chrome | Edge | Firefox | Safari | Chrome Android | Firefox Android | Safari iOS |
|---|---|---|---|---|---|---|---|
| CSSFontFeatureValuesMap | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.@@iterator | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.clear | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.delete | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.entries | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.forEach | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.get | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.has | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.keys | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.set | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.size | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesMap.values | 111 | 111 | ✕ | ✕ | 111 | ✕ | ✕ |
| CSSFontFeatureValuesRule | 134 | 134 | 34 | 16.2 | 134 | 34 | 16.2 |
| CSSFontFeatureValuesRule.annotation | 134 | 134 | ✕ | ✕ | 134 | ✕ | ✕ |
| CSSFontFeatureValuesRule.characterVariant | 134 | 134 | ✕ | ✕ | 134 | ✕ | ✕ |
| CSSFontFeatureValuesRule.fontFamily | 134 | 134 | 34 | 16.2 | 134 | 34 | 16.2 |
| CSSFontFeatureValuesRule.ornaments | 134 | 134 | ✕ | ✕ | 134 | ✕ | ✕ |
| CSSFontFeatureValuesRule.styleset | 134 | 134 | ✕ | ✕ | 134 | ✕ | ✕ |
| CSSFontFeatureValuesRule.stylistic | 134 | 134 | ✕ | ✕ | 134 | ✕ | ✕ |
| CSSFontFeatureValuesRule.swash | 134 | 134 | ✕ | ✕ | 134 | ✕ | ✕ |
Show 17 more
| Sub-feature | Chrome | Edge | Firefox | Safari | Chrome Android | Firefox Android | Safari iOS |
|---|---|---|---|---|---|---|---|
| @font-feature-values | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| @font-feature-values.annotation | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| @font-feature-values.character-variant | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| @font-feature-values.historical-forms | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| @font-feature-values.ornaments | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| @font-feature-values.styleset | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| @font-feature-values.stylistic | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| @font-feature-values.swash | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| font-variant-alternates | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| font-variant-alternates.annotation | 111 | 111 | 34 | 16.2 | 111 | 34 | 16.2 |
| font-variant-alternates.character_variant | 111 | 111 | 34 | 16.2 | 111 | 34 | 16.2 |
| font-variant-alternates.historical-forms | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| font-variant-alternates.normal | 111 | 111 | 34 | 9.1 | 111 | 34 | 9.3 |
| font-variant-alternates.ornaments | 111 | 111 | 34 | 16.2 | 111 | 34 | 16.2 |
| font-variant-alternates.styleset | 111 | 111 | 34 | 16.2 | 111 | 34 | 16.2 |
| font-variant-alternates.stylistic | 111 | 111 | 34 | 16.2 | 111 | 34 | 16.2 |
| font-variant-alternates.swash | 111 | 111 | 34 | 16.2 | 111 | 34 | 16.2 |