font-synthesis-style
Baseline 2023Newly available
Since March 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
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: italic
is 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
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 url("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 |