Элемент: метод computedStyleMap()
Ограниченная доступность
Эта функция не относится к Baseline, так как она не работает во всех широко используемых браузерах.
Метод computedStyleMap() интерфейса Element возвращает интерфейс StylePropertyMapReadOnly, который предоставляет доступ к данным блока CSS-деклараций для чтения, являясь альтернативой CSSStyleDeclaration.
Синтаксис
computedStyleMap()
Параметры
Нет.
Возвращаемое значение
Интерфейс StylePropertyMapReadOnly.
Примеры
Начнём с простого HTML: абзац с ссылкой и списком определений, к которому мы добавим все пары свойство/значение CSS.
<p> <a href="https://example.com">Link</a> </p> <dl id="regurgitation"></dl>
Добавим немного CSS:
a {
--color: red;
color: var(--color);
}
Добавим JavaScript для получения нашей ссылки и возвращения списка всех значений свойств CSS, используя computedStyleMap().
// get the element
const myElement = document.querySelector("a");
// get the <dl> we'll be populating
const stylesList = document.querySelector("#regurgitation");
// Retrieve all computed styles with computedStyleMap()
const allComputedStyles = myElement.computedStyleMap();
// iterate through the map of all the properties and values, adding a <dt> and <dd> for each
for (const [prop, val] of allComputedStyles) {
// properties
const cssProperty = document.createElement("dt");
cssProperty.appendChild(document.createTextNode(prop));
stylesList.appendChild(cssProperty);
// values
const cssValue = document.createElement("dd");
cssValue.appendChild(document.createTextNode(val));
stylesList.appendChild(cssValue);
}
В браузерах, которые поддерживают computedStyleMap() , вы увидите список всех свойств и значений CSS. В других браузерах вы увидите только ссылку.
Вы заметили, сколько у ссылки было свойств CSS по умолчанию? Обновите document.querySelector("a") на document.querySelector("p"), и вы увидите разницу в значениях margin-top и margin-bottom по умолчанию.
Спецификации
| Спецификация |
|---|
| CSS Typed OM Level 1 # dom-element-computedstylemap |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
computedStyleMap |
66 | 79 | Нет | 53 | 16.4 | 66 | Нет | 47 | 16.4 | 9.0 | 66 |
© 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/Element/computedStyleMap