StylePropertyMapReadOnly
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die StylePropertyMapReadOnly-Schnittstelle der CSS Typed Object Model API bietet eine schreibgeschützte Darstellung eines CSS-Deklarationsblocks, die eine Alternative zu CSSStyleDeclaration darstellt.
Eine Instanz dieser Schnittstelle kann mit Element.computedStyleMap() abgerufen werden.
Instanzeigenschaften
StylePropertyMapReadOnly.size-
Gibt eine nicht-negative ganze Zahl zurück, die die Größe des
StylePropertyMapReadOnly-Objekts enthält.
Instanzmethoden
StylePropertyMapReadOnly.entries()-
Gibt ein Array von
[key, value]-Paaren der eigenen aufzählbaren Eigenschaften eines gegebenen Objekts zurück, in der gleichen Reihenfolge, wie sie durch einefor...in-Schleife bereitgestellt werden (der Unterschied ist, dass eine for-in-Schleife auch Eigenschaften in der Prototypenkette aufzählt). StylePropertyMapReadOnly.forEach()-
Führt eine bereitgestellte Funktion einmal für jedes Element von
StylePropertyMapReadOnlyaus. StylePropertyMapReadOnly.get()-
Gibt den Wert der angegebenen Eigenschaft zurück.
StylePropertyMapReadOnly.getAll()-
Gibt ein Array von
CSSStyleValue-Objekten zurück, die die Werte für die angegebene Eigenschaft enthalten. StylePropertyMapReadOnly.has()-
Gibt an, ob die angegebene Eigenschaft im
StylePropertyMapReadOnly-Objekt enthalten ist. StylePropertyMapReadOnly.keys()-
Gibt einen neuen Array-Iterator zurück, der die Schlüssel für jedes Element in
StylePropertyMapReadOnlyenthält. StylePropertyMapReadOnly.values()-
Gibt einen neuen Array-Iterator zurück, der die Werte für jedes Index im
StylePropertyMapReadOnly-Objekt enthält.
Beispiele
>Grundlegende Verwendung
Wir benötigen ein Element zur Beobachtung:
<p>
This is a paragraph with some text. We can add some CSS, or not. The style map
will include all the default and inherited CSS property values.
</p>
<dl id="output"></dl>
Wir fügen etwas CSS mit einer benutzerdefinierten Eigenschaft hinzu, um die Ausgabe besser zu demonstrieren:
p {
--some-variable: 1.6em;
--some-other-variable: translateX(33vw);
--another-variable: 42;
line-height: var(--some-variable);
}
Wir fügen JavaScript hinzu, um unser Paragraphen-Element zu greifen und eine Definitionsliste aller Standard-CSS-Eigenschaftswerte mit Element.computedStyleMap() zurückzugeben.
// get the element
const myElement = document.querySelector("p");
// get the <dl> we'll be populating
const stylesList = document.querySelector("#output");
// Retrieve all computed styles with computedStyleMap()
const stylePropertyMap = myElement.computedStyleMap();
// iterate through the map of all the properties and values, adding a <dt> and <dd> for each
for (const [prop, val] of stylePropertyMap) {
// properties
const cssProperty = document.createElement("dt");
cssProperty.innerText = prop;
stylesList.appendChild(cssProperty);
// values
const cssValue = document.createElement("dd");
cssValue.innerText = val;
stylesList.appendChild(cssValue);
}
Spezifikationen
| Spezifikation |
|---|
| CSS Typed OM Level 1> # stylepropertymapreadonly> |