FontFaceSet
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
Note: This feature is available in Web Workers.
The FontFaceSet
interface of the CSS Font Loading API manages the loading of font-faces and querying of their download status.
A FontFaceSet
instance is a Set
-like object that can hold an ordered set of FontFace
objects.
This property is available as Document.fonts
, or self.fonts
in web workers.
Instance properties
FontFaceSet.status
Read only-
Indicates the font-face's loading status. It will be one of
'loading'
or'loaded'
. FontFaceSet.ready
Read only-
Promise
which resolves once font loading and layout operations have completed. FontFaceSet.size
Read only-
Returns the number of values in the
FontFaceSet
.
Events
loading
-
Fires when a font-face set has started loading.
loadingdone
-
Fires when a font face set has finished loading.
loadingerror
-
Fires when an error occurred whilst loading a font-face set.
Instance methods
FontFaceSet.add()
-
Adds a font to the font set.
FontFaceSet.check()
-
A boolean value that 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.entries()
-
Returns a new iterator with the values for each element in the
FontFaceSet
in insertion order. FontFaceSet.forEach()
-
Executes a provided function for each value in the
FontFaceSet
object. FontFaceSet.has()
-
Returns a
Boolean
asserting whether an element is present with the given value. FontFaceSet.keys()
-
An alias for
FontFaceSet.values()
. FontFaceSet.load()
-
Returns a
Promise
which resolves to a list of font-faces for a requested font. FontFaceSet.values()
-
Returns a new iterator object that yields the values for each element in the
FontFaceSet
object in insertion order.
Specifications
Specification |
---|
CSS Font Loading Module Level 3 # FontFaceSet-interface |
Browser compatibility
BCD tables only load in the browser