font-synthesis-style
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2023.
The font-synthesis-style CSS property lets you specify whether or not the browser may synthesize the oblique typeface when it is missing in a font family.
It is often convenient to use the shorthand property font-synthesis to control all typeface synthesis values.
Syntax
/* Keyword values */ font-synthesis-style: auto; font-synthesis-style: none; font-synthesis-style: oblique-only; /* Global values */ font-synthesis-style: inherit; font-synthesis-style: initial; font-synthesis-style: revert; font-synthesis-style: revert-layer; font-synthesis-style: unset; Values
auto-
Indicates that the missing oblique typeface may be synthesized by the browser if needed.
none-
Indicates that the synthesis of the missing oblique typeface by the browser is not allowed.
oblique-only-
Same as
auto, but no font synthesis occurs iffont-style: italicis set.
Formal definition
| Initial value | auto |
|---|---|
| Applies to | all elements and text. It also applies to ::first-letter and ::first-line. |
| Inherited | yes |
| Computed value | as specified |
| Animation type | discrete |
Formal syntax
font-synthesis-style =
auto |
none |
oblique-only
Examples
>Disabling synthesis of oblique typeface
This example shows turning off synthesis of the oblique typeface by the browser in the Montserrat font.
HTML
<p class="english"> This is the default <em>oblique typeface</em> and <strong>bold typeface</strong>. </p> <p class="english no-syn"> The <em>oblique typeface</em> is turned off here but not the <strong>bold typeface</strong>. </p> CSS
@import "https://fonts.googleapis.com/css2?family=Montserrat&display=swap"; .english { font-family: "Montserrat", sans-serif; } .no-syn { font-synthesis-style: none; } Result
Comparison of font-synthesis-style values
This example compares all the font-synthesis-style values using italic and oblique styled texts.
HTML
<div class="fss-none"> <h2>font-synthesis-style: none</h2> <p class="oblique">This text is set to <code>oblique</code></p> <p class="italic">This text is set to <code>italic</code></p> </div> <div class="fss-auto"> <h2>font-synthesis-style: auto</h2> <p class="oblique">This text is set to <code>oblique</code></p> <p class="italic">This text is set to <code>italic</code></p> </div> <div class="fss-oblique-only"> <h2>font-synthesis-style: oblique-only</h2> <p class="oblique">This text is set to <code>oblique</code></p> <p class="italic">This text is set to <code>italic</code></p> </div> CSS
/* Specify style of the font synthesis */ .fss-none { font-synthesis-style: none; } .fss-auto { font-synthesis-style: auto; } .fss-oblique-only { font-synthesis-style: oblique-only; } /* Set font styles */ .oblique { font-style: oblique; } .italic { font-style: italic; } /* Styles for the demonstration */ .oblique::after { content: " (font-style: oblique)"; font-size: 0.8rem; vertical-align: sub; } .italic::after { content: " (font-style: italic)"; font-size: 0.8rem; vertical-align: sub; } Result
Specifications
| Specification |
|---|
| CSS Fonts Module Level 4> # font-synthesis-style> |
Browser compatibility
Loading…