章節(11) CSS三大特性

CSS三大特性 : 繼承,層疊,優先級

一. 繼承性

1.什么是繼承性?

作用: 給父元素設置一些屬性, 子元素也可以使用, 這個我們就稱之為繼承性

注意點:
  • 1.并不是所有的屬性都可以繼承, 只有以<strong>color/font-/text-/line-</strong>開頭的屬性才可以繼承
  • 2.在CSS的繼承中不僅僅是兒子可以繼承, 只要是后代都可以繼承
  • 3.<strong>繼承性中的特殊性</strong>
  • 3.1 a標簽的文字顏色和下劃線是不能繼承的(<strong>也就是說 不能通過繼承獲得</strong>)
  • 3.2 h標簽的文字大小是不能繼承的(<strong>也就是說 不能通過繼承獲得</strong>)
應用場景:

一般用于設置網頁上的一些共性信息, 例如網頁的文字顏色, 字體,文字大小等內容;
body{} >>> 一般在body里面設置共性信息

二. 層疊性

1.什么是層疊性?

作用: 層疊性就是CSS處理沖突的一種能力

注意點:

層疊性只有在多個選擇器選中"同一個標簽", 然后又設置了"相同的屬性", 才會發生層疊性

CSS全稱 Cascading StyleSheet (層疊式樣式表)
列如:
 <style>
        p{
            color: red;
        }
        .para{
            color: blue;
        }
 </style>
 <p id="identity" class="para">我是段落</p>

三. 優先級

1.什么是優先級?

作用:當多個選擇器選中同一個標簽, 并且給同一個標簽設置相同的屬性時, 如何層疊就由優先級來確定

2.優先級判斷的三種方式
  • 2.1間接選中就是指繼承
    如果是間接選中, 那么就是誰離目標標簽比較近就聽誰的
  • 2.2相同選擇器(直接選中)
    如果都是直接選中, 并且都是同類型的選擇器, 那么就是誰寫在后面就聽誰的
  • 2.3不同選擇器(直接選中)
    如果都是直接選中, 并且不是相同類型的選擇器, 那么就會按照選擇器的優先級來層疊:
id>類>標簽>通配符>繼承>瀏覽器默認

id>類>標>通>繼>瀏

四. !important

1.什么是!important

作用: 用于提升某個直接選中標簽的選擇器中的某個屬性的優先級的, 可以將被指定的屬性的優先級提升為最高

注意點:
  • 1.!important只能用于直接選中, <strong>不能用于間接選中</strong>
  • 2.通配符選擇器選中的標簽也是直接選中的,也可以用!important提升優先級
  • 3.!important只能提升被指定的屬性的優先級, 其它的屬性的優先級不會被提升
  • 4.!important必須寫在屬性值得分號前面
  • 5.!important前面的感嘆號不能省略
  <style>
      p{
         color: red !important; //提升優先級到最高
         font-size: 30px; //不會提升優先級(說明了上面的第3點)
       }
  </style>

五. 優先級的權重

1.什么是優先級的權重?

作用: 當多個選擇器混合在一起使用時, 我們可以通過計算權重來判斷誰的優先級最高

2.權重的計算規則
  • 2.1首先先計算選擇器中有多少個id, id多的選擇器優先級最高
  • 2.2如果id的個數一樣, 那么再看類名的個數, 類名個數多的優先級最高
  • 2.3如果類名的個數一樣, 那么再看標簽名稱的個數, 標簽名稱個數多的優先級最高
  • 2.4如果id個數一樣, 類名個數也一樣, 標簽名稱個數也一樣, 那么就不會繼續往下計算了, 那么此時誰寫在后面聽誰的
    也就是說優先級如果一樣, 那么誰寫在后面聽誰的
注意點:
  • 1). 只有選擇器是直接選中標簽的才需要計算權重, 否則一定會聽直接選中的選擇器的;
  • 2). 通配符的權重為0
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容