SVGElement: attributeStyleMap-Eigenschaft
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Die schreibgeschützte attributeStyleMap
-Eigenschaft des SVGElement
-Interfaces gibt ein dynamisches StylePropertyMap
-Objekt zurück, das eine Liste von Stil-Eigenschaften des Elements enthält, welche im style
-Attribut des Elements definiert sind oder über das style
-Eigenschaft des SVGElement
-Interfaces per Skript zugewiesen wurden.
Kurzschreibweisen werden erweitert. Wenn Sie border-top: 1px solid black
setzen, werden die Langform-Eigenschaften (border-top-color
, border-top-style
und border-top-width
) stattdessen gesetzt.
Der Hauptunterschied zwischen der style
-Eigenschaft und der attributeStyleMap
-Eigenschaft besteht darin, dass die style
-Eigenschaft ein CSSStyleDeclaration
-Objekt zurückgibt, während die attributeStyleMap
-Eigenschaft ein StylePropertyMap
-Objekt zurückgibt.
Obwohl die Eigenschaft selbst nicht beschreibbar ist, können Sie Inline-Stile über das zurückgegebene StylePropertyMap
-Objekt lesen und schreiben, genau wie über das CSSStyleDeclaration
-Objekt, das durch die style
-Eigenschaft zurückgegeben wird.
Wert
Ein dynamisches StylePropertyMap
-Objekt.
Beispiele
Der folgende Codeausschnitt zeigt die Beziehung zwischen dem style
-Attribut und der attributeStyleMap
-Eigenschaft:
<svg
width="50"
height="50"
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 250 250"
width="250"
height="250">
<circle
cx="100"
cy="100"
r="50"
id="el"
style="border-top: 1px solid blue; color: red;" />
</svg>
<div id="output"></div>
#el {
font-size: 16px;
}
#output {
white-space: pre-line;
}
const element = document.getElementById("el");
const output = document.getElementById("output");
for (const property of element.attributeStyleMap) {
output.textContent += `${property[0]} = ${property[1][0].toString()}\n`;
}
Spezifikationen
Specification |
---|
CSS Typed OM Level 1 # dom-elementcssinlinestyle-attributestylemap |