若是css代碼有衝突的,你要他顯示紅色,下面的代碼又要他顯示藍色,那麼瀏覽器會進行如下順序進行比較。誰的權重高,就聽誰的。css
一、比較重要性:瀏覽器
瀏覽器的默認樣式中的樣式,他的重要性是最低的,也是最容易被覆蓋的blog
書寫在做者樣式表中的普通樣式(一般出現層疊衝突都是這裏引發的)import
最後一個,做者樣式表中的css 代碼帶有!important。那麼他的權重將會被提高到最頂。im
二、比較特殊性:樣式
一般出現於做者樣式表中的普通樣式中的衝突。看選擇器來進行比較的,主要的規則就是 選擇器選的越仔細,越精準,那他的權重就越高。僞元素
具體規則,經過選擇器計算出一個四位數(0 0 0 0)最大值爲256纔會進一(本人沒有去試過,有別的大佬作過實驗),能夠暫時理解爲 個 十 百 千 位。img
千位:內聯樣式,記爲1,沒有話,就是0di
百位:選擇器中的擁有id選擇器數量loading
十位:類選擇器,屬性選擇器,僞類選擇器加起來的數量
個位:元素選擇器,僞元素選擇器加起來的數量
最後經過比較這四位數的大小,計算出哪一個權重高的,頁面的樣式就應用哪一個。
舉個例子:
最後經過比較這幾個四位數的大小,計算出哪一個權重高,頁面就顯示哪一個樣式。記住,人家不是個位數10 就變成百位數1了呢,若是沒有錯的話,是256才進1。
三、比較源次序:
最後,若是通過上面的比較還沒辦法勝出,那麼代碼書寫在靠後的勝出