Web/CSS/@font-face/font-display

From Get docs


The font-display descriptor determines how a font face is displayed based on whether and when it is downloaded and ready to use.

Syntax

/* Keyword values */
font-display: auto;
font-display: block;
font-display: swap;
font-display: fallback;
font-display: optional;

Values

auto
The font display strategy is defined by the user agent.
block
Gives the font face a short block period and an infinite swap period.
swap
Gives the font face an extremely small block period and an infinite swap period.
fallback
Gives the font face an extremely small block period and a short swap period.
optional
Gives the font face an extremely small block period and no swap period.

Description

The font display timeline

The font display timeline is based on a timer that begins the moment the user agent attempts to use a given downloaded font face. The timeline is divided into the three periods below which dictate the rendering behavior of any elements using the font face.

Font block period
If the font face is not loaded, any element attempting to use it must render an invisible fallback font face. If the font face successfully loads during this period, it is used normally.
Font swap period
If the font face is not loaded, any element attempting to use it must render a fallback font face. If the font face successfully loads during this period, it is used normally.
Font failure period
If the font face is not loaded, the user agent treats it as a failed load causing normal font fallback.

Formal definition

Related at-rule @font-face
Initial value auto
Computed value as specified

Formal syntax

[ auto | block | swap | fallback | optional ]

Examples

Specifying fallback font-display

@font-face {
  font-family: ExampleFont;
  src: url(/path/to/fonts/examplefont.woff) format('woff'),
       url(/path/to/fonts/examplefont.eot) format('eot');
  font-weight: 400;
  font-style: normal;
  font-display: fallback;
}

Specifications

Specification Status Comment
CSS Fonts Module Level 4The definition of 'font-display' in that specification. Working Draft Initial definition

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
font-display Chrome

Full support 72

Edge

Full support 79

Firefox

Full support 58

IE

No support No

Opera

Full support 60

Safari

Full support 11.1

WebView Android

Full support 72

Chrome Android

Full support 72

Firefox Android

Full support 58

Opera Android

Full support 51

Safari iOS

Full support 11.3

Samsung Internet Android

Full support 11.0

Legend

Full support  
Full support
No support  
No support


See also