Spec-Zone.ru › Web APIs

MathMLElement: свойство style

Базовая версия 2023
Новое

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

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

Только для чтения style свойство MathMLElement возвращает встроенный стиль элемента в виде объекта CSSStyleDeclaration, который содержит список всех свойств стиля для этого элемента со значениями, заданными только для атрибутов, определённых во встроенном style атрибуте элемента.

Сокращённые свойства раскрываются. Если вы задаёте style="border-top: 1px solid black", вместо этого устанавливаются свойства в полном формате (border-top-color, border-top-style и border-top-width).

Это свойство является только для чтения, т.е. невозможно присвоить ему объект CSSStyleDeclaration. Тем не менее, можно задать встроенный стиль, напрямую присвоив строку свойству style. В этом случае строка передаётся в CSSStyleDeclaration.cssText. Используя style таким образом, вы полностью перезапишете все встроенные стили элемента.

Поэтому, чтобы добавить конкретные стили элементу, не изменяя другие значения стилей, обычно предпочтительнее задавать отдельные свойства объекта CSSStyleDeclaration. Например, вы можете написать element.style.backgroundColor = "red".

Объявление стиля сбрасывается, если установить его в null или пустую строку, например, elt.style.color = null.

Примечание: Имена свойств CSS преобразуются в идентификаторы JavaScript по этим правилам:

  • Если свойство состоит из одного слова, оно остаётся без изменений: height остаётся таким же (в нижнем регистре).
  • Если свойство состоит из нескольких слов, разделённых дефисами, дефисы удаляются, и оно преобразуется в кемел-кейс: background-attachment становится backgroundAttachment.
  • Свойство float, являющееся зарезервированным ключевым словом JavaScript, преобразуется в cssFloat.

Свойство style имеет тот же приоритет в каскаде CSS, что и объявление встроенного стиля, заданное через атрибут style.

Значение

Живой объект CSSStyleDeclaration.

Примеры

Получение информации о стиле

Следующий фрагмент кода демонстрирует, как атрибут style преобразуется в список записей в CSSStyleDeclaration:

<math>
  <mrow>
    <mi>f</mi>
    <mo stretchy="false">(</mo>
    <mi class="parameter" style="color: red; border-bottom: 1px solid">x</mi>
    <mo stretchy="false">)</mo>
    <mo>=</mo>
    <mi>x</mi>
  </mrow>
</math>
<pre id="out"></pre>
const element = document.querySelector(".parameter");
const out = document.getElementById("out");
const elementStyle = element.style;

// We loop through all the element's styles using `for...in`
for (const prop in elementStyle) {
  // We check if the property belongs to the CSSStyleDeclaration instance
  // We also ensure that the property is a numeric index (indicating an inline style)
  if (
    Object.hasOwn(elementStyle, prop) &&
    !Number.isNaN(Number.parseInt(prop))
  ) {
    out.textContent += `${
      elementStyle[prop]
    } = '${elementStyle.getPropertyValue(elementStyle[prop])}'\n`;
  }
}

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

Спецификация
CSS Object Model (CSSOM)
# dom-elementcssinlinestyle-style

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
style 109 109 71 95 13.1 109 79 74 13.4 21.0 109

См. также

  • Использование динамической информации о стиле
  • HTMLElement.style
  • SVGElement.style
  • MathMLElement.attributeStyleMap

© 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/MathMLElement/style

Spec-Zone.ru

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