CSS引用方式及樣式層疊機制


CSS引用方式有3種,三種分別為:外部引入、內部引入、行內樣式,下面一 一進行介紹。

1.外部引入:CSS代碼在一個獨立的文件中,HTML通過Link標簽引入到頁面。

代碼格式:<link rel=“stylesheet” href="../css/index.css">;

注:1.link標簽是head的子元素;

     2.link是空元素,用於引入外部資源;

2.內部引入:將CSS代碼放入HTML文檔中的style元素

代碼格式:<style type="text/css">

      p{

        font-size(文字大小):10px;
      }

    </style>

3.行內樣式:CSS代碼寫在某個開始標記的style屬性中,不寫選擇器。

代碼格式:<p style="屬性值">元素內容</p>;

注:style所屬的標簽在body里;

樣式層疊機制:

  當有聲明沖突時,瀏覽器會自動觸發層疊機制。什么是聲明沖突呢?通俗來說就是同一個樣式的不同值應用到同一個標簽,舉個簡單的例子:
  
       

  相信小伙伴看到這個都知道結果是p標簽的字體顏色為綠色,但為什么是綠色呢,這也就是今天要說的層疊機制。
  首先說一下層疊的過程:1.比較優先級 2.比較特殊性 3.比較源次序,下面一 一進行介紹
  1.比較優先級:用戶樣式表>作者樣式表>瀏覽器的樣式表
         一個聲明的優先級,與它的來源和重要性有關,
         來源:
         重要性:若屬性值后跟上!improtant則表示這是一條重要聲明,反之為普通聲明,聲明相同時,重要聲明勝出,普通聲明淘汰。將上方的例子修改:
            
            一般在使用ui組件的時候,會常常用到重要聲明。

  2.比較特殊性:當發生沖突時,特殊性高的保留,特殊性低的淘汰。
         特殊性從高到低:行內樣式->ID選擇器->類選擇器->元素選擇器->通配符選擇器
         一個聲明的特殊性,取決於規則使用范圍的大小,具體規則:每一次沖突的聲明都會生成4個字母(a,b,c,d),首先比較a,如果a相同,則比較b...以此類推。廢話不多說,直接來看a,b,c,d具體是如何生成的
         a:當聲明是行內樣式,則為1,否則為0
         b:聲明中ID選擇器的個數
         c:聲明中類選擇器、偽類選擇器和屬性選擇器的個數和
         d:聲明中元素選擇器、偽元素選擇器的個數和
         通配符選擇器的特殊性為0,下面來個例子解釋:
            由於考慮到行內樣式的特殊性最高以及id選擇器的唯一性,所以就只考慮c和d的規則
            相信小伙伴們都猜到了結果,

  3.比較源次性:最后出現的聲明勝出,其他的全部淘汰,這一條比較簡單,就如同最開始的例子一樣。
  

本人小白,根據自己理解寫的,寫的不對的地方麻煩大神指點


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM