理解:last-child和:last-of-type

前提知識

  1. CSS選擇器匹配規則:從右向左
  2. 所有選擇器全部匹配CSS樣式纔會生效
  3. 同一樣式同一權重值,靠後聲明的纔會生效

:last-child

規範文檔:

represents the last element among a group of sibling elements
相對父節點的所有兄弟節點中的最後一個元素

:last-of-type

規範文檔:

represents the last element of its type among a group of sibling elements.
相對父節點的指定類型兄弟節點中的最後一個元素

例子

<style>
p:last-of-type {
  color: #f00;
}
p:last-child {
  color: #0f0;
}
</style>
<body>
  <p>我是第一個段落</p>
  <p>我是第二個段落</p>
  <p>我是第三個段落</p>
  <span>中出一個叛徒span</span>
</body>

結果
上述代碼會發現第三個段落變紅。

原因

  1. p:last-child選中的是兄弟節點中的最後一個,即<span>標籤,而前面是p選擇器,無法匹配,故樣式無法生效
  2. p:last-of-type選中的是指定<p>標籤後的最後一個,與p選擇器匹配,故樣式生效
  3. 同時兩者權重以及樣式相同,在能生效的情況下,p:last-child聲明靠後,應顯示綠色,此時顯示紅色無效也說明p:last-child未匹配
發佈了86 篇原創文章 · 獲贊 48 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章