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.status Read only
Indicates the font-face's loading status. It will be one of 'loading' or 'loaded'.

Events

FontFaceSet.onloading
An EventListener called whenever an event of type loading is fired, indicating a font-face set has started loading.
FontFaceSet.onloadingdone
An EventListener called whenever an event of type loadingdone is fired, indicating that a font face set has finished loading.
FontFaceSet.onloadingerror
An EventListener called whenever an event of type loadingerror is 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 Boolean that indicates whether a font is loaded, but doesn't initiate a load when it isn't.
FontFaceSet.clear()
Removes all fonts from the font set.
FontFaceSet.delete()
Removes a font from the font set.
FontFaceSet.load()
Returns a Promise which resolves to a list of font-faces for a requested font.
FontFaceSet.ready()
Returns a Promise which resolves once font loading and layout operations have completed.

Specifications

Specification Status Comment
CSS Font Loading Module Level 3
The definition of 'FontFaceSet' in that specification.
Working Draft Initial definition

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung Internet
Basic support
Experimental
Chrome Full support 35Edge ? Firefox Full support 41IE ? Opera ? Safari Full support 10WebView Android Full support 37Chrome Android Full support 35Edge Mobile ? Firefox Android Full support 41Opera Android ? Safari iOS Full support 10Samsung Internet Android ?
status
Experimental
Chrome ? Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?
onloading
Experimental
Chrome ? Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?
onloadingdone
Experimental
Chrome ? Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?
onloadingerror
Experimental
Chrome ? Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?
add
Experimental
Chrome ? Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?
check
Experimental
Chrome Full support 35Edge ? Firefox Full support 41IE ? Opera ? Safari ? WebView Android Full support 37Chrome Android Full support 35Edge Mobile ? Firefox Android Full support 41Opera Android ? Safari iOS ? Samsung Internet Android ?
clear
Experimental
Chrome Full support 48Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android Full support 48Chrome Android Full support 48Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?
delete
Experimental
Chrome ? Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?
load
Experimental
Chrome Full support 35Edge ? Firefox Full support 41IE ? Opera ? Safari ? WebView Android Full support 37Chrome Android Full support 35Edge Mobile ? Firefox Android Full support 41Opera Android ? Safari iOS ? Samsung Internet Android ?
ready
Experimental
Chrome Full support 35Edge ? Firefox Full support 41IE ? Opera ? Safari ? WebView Android Full support 37Chrome Android Full support 35Edge Mobile ? Firefox Android Full support 41Opera Android ? Safari iOS ? Samsung Internet Android ?

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.

Document Tags and Contributors

Contributors to this page: fscholz, YoruNoHikage, jpmedley, Alhadis, teoli, Sebastianz
Last updated by: fscholz,