Heim  >  Artikel  >  Web-Frontend  >  Warum gibt myDiv.style.display „Leer“ zurück, wenn es in einem Master-Stylesheet festgelegt wird?

Warum gibt myDiv.style.display „Leer“ zurück, wenn es in einem Master-Stylesheet festgelegt wird?

Susan Sarandon
Susan SarandonOriginal
2024-11-06 18:51:02992Durchsuche

Why Does myDiv.style.display Return Blank When Set in a Master Stylesheet?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn