Es ist einfach, Inline-CSS-Werte mit Javascript festzulegen. Wenn ich die Breite ändern möchte und HTML wie folgt habe:
<div style="width: 10px"></div>
Alles was ich tun muss ist:
document.getElementById('id').style.width = value;
Dadurch werden die Inline-Stylesheet-Werte geändert. Normalerweise ist dies kein Problem, da der Inline-Stil das Stylesheet überschreibt. Beispiel:
<style>
#tId {
width: 50%;
}
</style>
<div id="tId"></div>
Verwenden dieses Javascript:
document.getElementById('tId').style.width = "30%";
Ich bekomme folgendes:
<style>
#tId {
width: 50%;
}
</style>
<div id="tId" style="width: 30%";></div>
Dies ist ein Problem, da ich nicht nur keine Inline-Werte ändern möchte. Wenn ich nach der Breite suche, bevor ich sie einstelle, wenn ich:
<div id="tId"></div>
Der zurückgegebene Wert ist Null. Wenn ich also Javascript habe, das die Breite von etwas wissen muss, um eine Logik auszuführen (ich erhöhe die Breite um 1%, nicht auf einen bestimmten Wert), wird Null zurückgegeben, wenn ich die Zeichenfolge "50%" erwarte "funktioniert nicht wirklich.
Meine Frage: Ich habe Werte in einem CSS-Stil, die sich nicht inline befinden. Wie kann ich diese Werte abrufen? Wie kann ich den Stil anstelle der Inline-Werte unter Angabe einer ID ändern?