Heim > Artikel > Web-Frontend > Warum gibt myDiv.style.display „Leer“ zurück, wenn es in einem Master-Stylesheet festgelegt wird?
myDiv.style.Display gibt Leer zurück, wenn es im Master-Stylesheet festgelegt wird
Beim Festlegen des Anzeigestils eines div-Elements mit myDiv.style. display (JavaScript) ist es das erwartete Verhalten, eine leere Zeichenfolge zurückzugeben, wenn der Anzeigestil in einem Master-Stylesheet auf „Keine“ gesetzt ist. Dies liegt daran, dass JavaScript nicht direkt auf den berechneten Stil zugreifen kann, der durch CSS-Regeln angewendet wird.
Um dieses Problem zu beheben und den genauen Anzeigestil abzurufen, wird empfohlen, die Methode getComputedStyle() zu verwenden. Diese Methode ermöglicht den Zugriff auf den berechneten Stil eines Elements, einschließlich der in Master-Stylesheets definierten Stile.
Hier ist ein Beispiel für die Verwendung von getComputedStyle():
function getStyle(id, name) { var element = document.getElementById(id); return element.currentStyle ? element.currentStyle[name] : window.getComputedStyle ? window.getComputedStyle(element, null).getPropertyValue(name) : null; } var display = getStyle('myDiv', 'display'); alert(display); // Will print 'none' or 'block' or 'inline' etc.
Durch die Verwendung von getComputedStyle() können Sie den Anzeigestil eines Elements genau abrufen, selbst wenn es in einem Master-Stylesheet festgelegt ist. Dies stellt die ordnungsgemäße Funktionalität beim Umschalten des Anzeigestils mithilfe von JavaScript sicher.
Das obige ist der detaillierte Inhalt vonWarum gibt myDiv.style.display „Leer“ zurück, wenn es in einem Master-Stylesheet festgelegt wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!