The replace()
method of the CSSStyleSheet
interface asynchronously replaces the content of the stylesheet with the content passed into it. The method returns a promise that resolves with the CSSStyleSheet
object.
The replace()
and CSSStyleSheet.replaceSync()
methods can only be used on a stylesheet created with the CSSStyleSheet()
constructor.
A Promise
that resolves with the CSSStyleSheet
.
In the following example a new stylesheet is created and two CSS rules are added using replace()
. The first rule is then printed to the console, which will return: body { font-size: 1.4em; }
const stylesheet = new CSSStyleSheet();
stylesheet
.replace("body { font-size: 1.4em; } p { color: red; }")
.then(() => {
console.log(stylesheet.cssRules[0].cssText);
})
.catch((err) => {
console.error("Failed to replace styles:", err);
});