1. 開発者向けのウェブ技術
  2. Web API
  3. CSSStyleSheet
  4. CSSStyleSheet: replace() メソッド

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

CSSStyleSheet: replace() メソッド

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2023年3月⁩.

replace()CSSStyleSheet インターフェイスのメソッドで、スタイルシートの内容を渡された内容で非同期に置き換えます。このメソッドは CSSStyleSheet オブジェクトで解決されるプロミスを返します。

replace()CSSStyleSheet.replaceSync() の両メソッドは、 CSSStyleSheet() コンストラクターで作成されたスタイルシートでのみ使用できます。

構文

js
replace(text)

引数

text

スタイルシートのコンテンツを置き換えるためのスタイルルールを格納した文字列。文字列に解釈可能なルールのリストが入っていない場合、値は空文字列に設定されます。

メモ: もし text に渡されたルールの中に @import ルールでインポートされた外部スタイルシートがあった場合は、それらのルールは除去され、コンソールに警告が出力されます。

返値

Promise で、 CSSStyleSheet に解決します。

例外

NotAllowedError DOMException

次の 2 つの条件のうち一方が成立した場合に発生します。

  • このスタイルシートが CSSStyleSheet() コンストラクターを使用して作成されていない。
  • このスタイルシートが変更不可に設定されている。

次の例では、新しいスタイルシートを作成し、replace() を使って 2 つの CSS ルールを追加しています。最初のルールはコンソールに body { font-size: 1.4em; } と表示されます。

js
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);
 });

仕様書

Specification
CSS Object Model (CSSOM)
# dom-cssstylesheet-replace

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute

This page was last modified on by MDN contributors.

AltStyle によって変換されたページ (->オリジナル) /