JavaScript 樣式屬性差異
Q: 為什麼定義空值在CSS中,即使元素繼承了樣式?
A: element.style 屬性擷取直接套用於 HTML 文件中元素的內聯樣式。 CSS 中定義的樣式不被視為內聯,因此 element.style 不會反映它們。
計算樣式:
JavaScript 提供了 window.getCompulatedStyle()函數取得應用於元素的實際有效樣式。此函數接受一個元素作為輸入,並傳回一個 ComputedStyle 對象,其中包含所有 CSS 屬性的計算值。
範例:
考慮以下程式碼:
<div>
#test { display: block; }
存取document.getElementById('test').style.display 將傳回空字串,而window.getCompulatedStyle(document.getElementById('test')).display 將正確傳回「block」。
結論:
要取得元素應用的 CSS 樣式,需要使用 window.getCompulatedStyle()。使用 element.style 僅擷取內聯樣式,通常不會為具有外部 CSS 的元素設定內聯樣式。
以上是為什麼 CSS 中定義的樣式的「element.style」會回傳空值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!