This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The FontFaceSet interface of the CSS Font Loading API manages the loading of font-faces and querying of their download status.
Properties
FontFaceSet.statusRead only- Indicates the font-face's loading status. It will be one of
'loading'or'loaded'.
FontFaceSet.readyRead onlyPromisewhich resolves once font loading and layout operations have completed.
Events
FontFaceSet.onloading- An
EventListenercalled whenever an event of typeloadingis fired, indicating a font-face set has started loading. FontFaceSet.onloadingdone- An
EventListenercalled whenever an event of typeloadingdoneis fired, indicating that a font face set has finished loading. FontFaceSet.onloadingerror- An
EventListenercalled whenever an event of typeloadingerroris fired, indicating that an error occurred whilst loading a font-face set.
Methods
FontFaceSet.add()- Adds a font to the font set.
FontFaceSet.check()- A
Booleanthat indicates whether a font is loaded, but doesn't initiate a load when it isn't. FontFaceSet.clear()- Removes all manually-added fonts from the font set. CSS-connected fonts are unaffected.
FontFaceSet.delete()- Removes a manually-added font from the font set. CSS-connected fonts are unaffected.
FontFaceSet.load()- Returns a
Promisewhich resolves to a list of font-faces for a requested font.
Specifications
| Specification | Status | Comment |
|---|---|---|
| CSS Font Loading Module Level 3 The definition of 'FontFaceSet' in that specification. |
Editor's Draft | Initial definition |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
FontFaceSet | Chrome Full support 35 | Edge Full support ≤79 | Firefox Full support 41 | IE ? | Opera Full support Yes | Safari Full support 10 | WebView Android Full support 37 | Chrome Android Full support 35 | Firefox Android Full support 41 | Opera Android Full support Yes | Safari iOS Full support 10 | Samsung Internet Android Full support 4.0 |
add | Chrome Full support 48 | Edge Full support ≤79 | Firefox Full support Yes | IE ? | Opera Full support 35 | Safari Full support 10 | WebView Android Full support 48 | Chrome Android Full support 48 | Firefox Android Full support Yes | Opera Android Full support 35 | Safari iOS Full support Yes | Samsung Internet Android Full support 5.0 |
check | Chrome Full support 35 | Edge Full support ≤79 | Firefox Full support 41 | IE ? | Opera ? | Safari Full support 10 | WebView Android Full support 37 | Chrome Android Full support 35 | Firefox Android Full support 41 | Opera Android ? | Safari iOS Full support Yes | Samsung Internet Android Full support 4.0 |
clear | Chrome Full support 48 | Edge Full support ≤79 | Firefox Full support Yes | IE ? | Opera Full support 35 | Safari Full support 10 | WebView Android Full support 48 | Chrome Android Full support 48 | Firefox Android Full support Yes | Opera Android Full support 35 | Safari iOS Full support Yes | Samsung Internet Android Full support 5.0 |
delete | Chrome Full support 48 | Edge Full support ≤79 | Firefox Full support Yes | IE ? | Opera Full support 35 | Safari Full support 10 | WebView Android Full support 48 | Chrome Android Full support 48 | Firefox Android Full support Yes | Opera Android Full support 35 | Safari iOS Full support Yes | Samsung Internet Android Full support 5.0 |
load | Chrome Full support 35 | Edge Full support ≤79 | Firefox Full support 41 | IE ? | Opera Full support 35 | Safari Full support 10 | WebView Android Full support 37 | Chrome Android Full support 35 | Firefox Android Full support 41 | Opera Android Full support 35 | Safari iOS Full support Yes | Samsung Internet Android Full support 4.0 |
onloading | Chrome Full support 48 | Edge Full support ≤79 | Firefox Full support Yes | IE ? | Opera Full support 35 | Safari Full support 10 | WebView Android Full support 48 | Chrome Android Full support 48 | Firefox Android Full support Yes | Opera Android Full support 35 | Safari iOS Full support Yes | Samsung Internet Android Full support 5.0 |
onloadingdone | Chrome Full support 48 | Edge Full support ≤79 | Firefox Full support Yes | IE ? | Opera Full support 35 | Safari Full support 10 | WebView Android Full support 48 | Chrome Android Full support 48 | Firefox Android Full support Yes | Opera Android Full support 35 | Safari iOS Full support Yes | Samsung Internet Android Full support 5.0 |
onloadingerror | Chrome Full support 48 | Edge Full support ≤79 | Firefox Full support Yes | IE ? | Opera Full support 35 | Safari Full support 10 | WebView Android Full support 48 | Chrome Android Full support 48 | Firefox Android Full support Yes | Opera Android Full support 35 | Safari iOS Full support Yes | Samsung Internet Android Full support 5.0 |
ready | Chrome Full support 35 | Edge Full support ≤79 | Firefox Full support 41 | IE ? | Opera Full support 35 | Safari Full support 10 | WebView Android Full support 37 | Chrome Android Full support 35 | Firefox Android Full support 41 | Opera Android Full support 35 | Safari iOS Full support Yes | Samsung Internet Android Full support 4.0 |
status | Chrome Full support 48 | Edge Full support ≤79 | Firefox Full support Yes | IE ? | Opera Full support 35 | Safari Full support 10 | WebView Android Full support 48 | Chrome Android Full support 48 | Firefox Android Full support Yes | Opera Android Full support 35 | Safari iOS Full support Yes | Samsung Internet Android Full support 5.0 |
| Available in workers | Chrome Full support 69 | Edge Full support ≤79 | Firefox ? | IE ? | Opera ? | Safari ? | WebView Android Full support 69 | Chrome Android Full support 69 | Firefox Android ? | Opera Android ? | Safari iOS ? | Samsung Internet Android Full support 10.0 |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
