js之如何獲取css樣式

2022-07-30 19:00:17 字數 885 閱讀 9576

一、獲取內聯樣式

1 

2

在這種情況下,獲取和設定樣式只靠style屬性就可以,因為element.style屬性返回的是類似陣列的一組樣式屬性及對應值,因此訪問具體樣式的時候可以採取兩種方式即「ele.style.屬性名稱」和「ele.style['屬性名稱']」。但是,要注意的是,針對css樣式裡background-color;margin-left之類的短槓相接的屬性名稱,在使用style屬性獲取設定樣式的時候名稱要改為駝峰式,如ele.style.backgroundcolor.

二、因為第一種方法,即使用style屬性只能獲取到內聯樣式。但是,實際情況是文件在現在都基本遵循分離思想,樣式基本都是外部鏈結,所以三種樣式都要考慮到的,這時就要使用其他方法進行獲取,而在這種情況下進行樣式獲取時,不同的瀏覽器又有不同的處理方式(主要是ie和非ie),因此根據瀏覽器可以分為兩種方式:

(2.1)非ie瀏覽器中,使用document.defaultview物件的getcomputedstyle(ele,null/偽類)方法,該方法接受兩個引數,第乙個為要考察的元素,第二個則要根據情況,如果只是考察元素本身則為null,如果要 考察偽類,則為響應的偽類。該方法獲取到的為元素應用的最終樣式組合,同樣是類似陣列的乙個例項。

(2.2)在ie瀏覽器中,對getcomputedstyle()方法不支援,但是針對每個標籤元素都有乙個近似於style屬性的currentstyle的屬性,且用法和style用法相同。只不過獲取到的樣式範圍不一樣。currenstyle獲取到的和getcomputedstyle()方法相接近。

為了在處理時達到相容,可以根據這兩種不同的處理方式建立乙個函式來達到相容目的,使得不管在那種瀏覽器中,都可以成功獲採樣式。如下所示:

18 

9 10

js之如何獲取css樣式

一 獲取內聯樣式 1 2在這種情況下,獲取和設定樣式只靠style屬性就可以,因為element.style屬性返回的是類似陣列的一組樣式屬性及對應值,因此訪問具體樣式的時候可以採取兩種方式即 ele.style.屬性名稱 和 ele.style 屬性名稱 但是,要注意的是,針對css樣式裡back...

js獲取css樣式

css樣式分為以下三種 1 內聯樣式 在html元素的內部,又稱行內樣式 2 內部樣式 位於 對樣式進行封裝一下 var ali document.getelementbyid myul1 getelementsbytagname li for var i 0 i基於ie瀏覽器的非行內獲取法 使用 ...

js移除某個樣式 js中如何移除css樣式?

js中如何移除css樣式?dom元素應用css有兩種方式 通過class類名和id名應用樣式 通過指定style屬性應用樣式 我們可以針對以上兩種方式寫移除css樣式的方法 3 使用remove移除網頁中使用link標籤引入的css es6 document.queryselectorall lin...