css3 選取器 權重問題 (第二部分)

來源:互聯網
上載者:User

標籤:選擇   領導   方法   直接   運行   重要   -128   偽類   一個   

  這篇博文有關css的權重問題,我個人認為這是css知識中很重要的一個知識點。因為在開發的過程能中我們會經常遇到這種問題,特別是如果你使用架構的時候,有些架構的某些標籤有一些預設的樣式。所以我們可以通過增加權重的方式來使我們所寫的樣式有效。既然說到權重那就必然要說起權重的等級以及權重值。

  css的權重等級可以分為5個層級:

  1.第一層級:內聯樣式,詳細大家都知道什麼是內聯樣式,既是在標籤添加style屬性<div style=""></div>,這種方式權重值最高,權重值為1000,但是開發過程中比較少用到這種,因為現在推薦的方式都是將css,js,html寫成單獨檔案。這樣子看起來會比較整潔以及方便管理。

  2.第二層級:ID選取器,id選取器就是使用"#"開頭選擇,大家應該都明白,這種選擇方式的權重值為0100。

  3.第三層級:class選取器,class選取器就是使用"."開頭的選取器,這種選擇方式的權重值為0010.

  4.第四層級:標籤選取器以及偽類別選取器,就是直接使用標籤或者偽類別選取器,這種兩種選擇方式的權重值都為0001.

  5.這裡提醒一下通用選取器(*),子選取器(>)和相鄰同胞選取器(+)這三種是沒有權重的,也就是權重值為0000,雖然沒有權重 但是比繼承樣式權重高;這裡值得提醒一下,並非所有的偽類別選取器的權重都為i,總一些領導家的孩子,像a:link,a:visited偽類別選取器,他們的權重比第三層級class選取器的權重還高。

  這裡要提醒一下,這裡的權重並不是10進位,不過在比比較的時候可以當作十進位去疊加。

  案例

  測試結果

  這裡p.c的權重值為0011,.c的權重值為0010,所以字型會顯示藍色

  當然,如果是從上到下多層次選擇也是一樣的

  測試結果 

  這裡的權重和上面也是一樣的div .c權重為0011,.c權重值為10

  案例(測試偽類別選取器)

  測試結果

  是不是,對不對,我沒有說謊嘛

  其實權重計算方法是這樣子大同小異的

   博文最後要講一個最重量層級權重的東西,這傢伙可不止是領導的兒子,簡直就是太子來的,這個就是

  !important

 你沒有看錯,就是樓上的那個  !important 這個傢伙,他可以將你所要呈現的樣式的權重提的比行內樣式還高,我舉個例子來說明他的用法

  運行結果

  有木有,有木有,明明使用的是行內樣式,但是顯示的卻是綠色,彷彿被戴了綠帽

  不過這個是樣式是的權重,並非是選取器的權重,就是說和上面說的選取器權重不衝突,但是他卻可以改變某些你也想要改變的樣式。

  好了,上面內容就是css3的權重介紹

 

  

 

 

 

  

 

   

 

css3 選取器 權重問題 (第二部分)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.