2017-04-22 5 views
0

Ist es irgendwie möglich, alle Eigenschaften einer Klasse durch JavaScript zu erhalten? Können sagen, ichWie bekomme ich ALLE Klasseneigenschaften in JavaScript

.menu { color: black; width: 10px; } 

eine Klasse Wie kann ich "Farbe: schwarz; width: 10px;" als String durch JavaScript?

Vielen Dank!

+0

Für mich klingt das wie eine seltsame Frage. Es klingt so, als ob Sie die Stile manuell auf Knoten anwenden möchten, anstatt die Klasse zu verwenden. Eine einzelne Regel in CSS hat aufgrund der Kaskade, dem C in CSS, wenig Bedeutung. Der resultierende Stil hängt von den anderen Regeln in Ihren CSS-Dateien, der Spezifität ihrer Selektoren, der Reihenfolge der Regeln und dem Kontext des Knotens ab, der diesen bestimmten Selektoren im Dokument entspricht. – Thomas

Antwort

3

Sie können getComputedStyle() verwenden. Dadurch werden alle Inline-Stil oder CSS-Styling in einem CSS gemacht wurden, finden file..This liefert alle Eigenschaften des Elements berechnet

Siehe Schnipsel unten

var el=document.getElementsByClassName("menu")[0]; 
 
style=getComputedStyle(el); 
 
console.log(style);
.menu{ 
 
color:green; 
 
background:blue; 
 
opacity:1 
 
}
<div class="menu"></div>

können Sie erhalten auch eine spezifische Eigenschaft aus der Klasse im obigen Ausschnitt, Beispiel

style.width 
+2

Beachten Sie auch, dass zurückgegebene Farben werden nicht in Worten (wie "schwarz" in Frage) oder sogar hex, wenn das ist, wie sie in css eingestellt werden ... wird rgb oder rgba je nach Browser sein. Um "schwarz" zu bekommen würde viel mehr zusätzliche Arbeit von Entwickler – charlietfl

+0

guten Punkt erfordern ..... – repzero

+0

ähnliches Problem mit Dimensionen wie '%', 'em' etc – charlietfl

Verwandte Themen