css property
`font-synthesis-style` CSS property
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
This property is specified as one of the following keyword 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.
- : Same as
Formal definition
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 "https://fonts.googleapis.com/css2?family=Montserrat&display=swap";
.english {
font-family: "Montserrat", sans-serif;
}
.no-syn {
font-synthesis-style: none;
}
Result
Interactive exampleOpen the canonical MDN source to run this embedded demo.
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
@import "https://fonts.googleapis.com/css2?family=Montserrat&display=swap";
p {
font-family: "Montserrat", sans-serif;
font-size: 1.2rem;
}
@supports not (font-synthesis-style: oblique-only) {
body::before {
content: "Your browser doesn't support the 'oblique-only' value.";
background-color: wheat;
display: block;
text-align: center;
padding: 1rem 0;
}
}
/* 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
Interactive exampleOpen the canonical MDN source to run this embedded demo.
Specifications
SpecificationsStandards references are available on the canonical MDN page.
Browser compatibility
Browser compatibilityCompatibility data is available on the canonical MDN page.