Spec-Zone.ru › Web APIs

CSSStyleSheet: метод replace()

Базовая линия 2023
Новое

С марта 2023 года эта функция работает на последних устройствах и версиях браузеров. Возможно, эта функция не будет работать на старых устройствах или браузерах.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Метод replace() интерфейса CSSStyleSheet асинхронно заменяет содержимое стилей на содержимое, переданное в него. Метод возвращает промис, который разрешается с объектом CSSStyleSheet.

Методы replace() и CSSStyleSheet.replaceSync() могут быть использованы только для таблиц стилей, созданных с помощью конструктора CSSStyleSheet().

Синтаксис

replace(text)

Параметры

text

Строка, содержащая правила стилей, которые заменят содержимое таблицы стилей. Если строка не содержит допустимый список правил, значение будет установлено в пустую строку.

Примечание: Если какие-либо правила, переданные в text — это внешние таблицы стилей, импортированные с помощью правила @import, эти правила будут удалены, и предупреждение будет выведено в консоль.

Возвращаемое значение

Промис Promise, который разрешается с объектом CSSStyleSheet.

Исключения

NotAllowedError DOMException

Выбрасывается, если выполняется одно из следующих условий:

  • Таблица стилей не была создана с помощью конструктора CSSStyleSheet().
  • Таблица стилей помечена как неизменяемая.

Примеры

В следующем примере создается новая таблица стилей и добавляются два правила CSS с помощью replace(). Первое правило затем выводится в консоль, которое вернет: 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);
  });

Спецификации

Спецификация
CSS Объектная модель (CSSOM)
# dom-cssstylesheet-replace

Совместимость браузеров

Рабочий стол Мобильный
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari в IOS Samsung Internet WebView Android
replace 73 79 101 60 16.4 73 101 52 16.4 11.0 73

См. также

  • Конструируемые таблицы стилей (web.dev)
  • Использование Shadow DOM

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/replace

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API