首頁 >web前端 >css教學 >為什麼 CSS 中定義的樣式的「element.style」會回傳空值?

為什麼 CSS 中定義的樣式的「element.style」會回傳空值?

Linda Hamilton
Linda Hamilton原創
2024-11-06 11:01:02236瀏覽

Why does `element.style` return an empty value for styles defined in CSS?

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn