CSS3新增(選擇器{屬性選擇器,結構偽類選擇器,偽元素選擇器})


1、屬性選擇器

  屬性選擇器,可以根據元素特定的屬性來選擇元素,這樣就不用借助 類 或者 id選擇器。

  E [ att ]   選擇具有 att 屬性的 E 元素   例如:input [ value ]

  E [ att = 'val' ]   選擇具有 att 屬性且屬性值等於 val 的 E元素

  E [ att = 'val' ]   選擇具有 att 屬性且屬性值等於 val 的 E元素

  E [ att ^= 'val' ]   選擇具有 att 屬性且屬性值以 val 開頭的 E元素

  E [ att $= 'val' ]   選擇具有 att 屬性且屬性值以 val 結尾的 E元素

  E [ att *= 'val' ]   選擇具有 att 屬性且屬性值含有 val 的 E元素

  注意:類選擇器,屬性選擇器,偽類選擇器 權重都是 10 

2、結構偽類選擇器(一般用於選擇父級里面的第幾個孩子)

  父元素  E:first-child    父元素中的第一個子元素 E

  父元素  E:last-child    父元素中的最后一個子元素  E

  父元素  E:nth-child( n )     父元素中的第 N 個子元素 E

  注意:

   ul  :first-child{ color:pink; }  // 選擇  ul 下的第一個子元素( 第一個子元素可以使 div,p,span任何子元素)

   ul  li:first-child{ color: pink; }   //  選擇  ul 下的第一個元素名是 li  的子元素 

  nth-child( n ) 注意點:(n 可以是數字,關鍵字和公式)

  數字:選擇第 n 個子元素,里面數字從 1 開始

  關鍵字: even 偶數,odd 奇數

   ul  li:nth-child( even )  //  選擇 ul 中所有 偶數行的 li 子元素 

  公式:常見公式如下(如果 n 是公式,則從 0 開始計算,但是第 0 個元素 或者超出了元素的個數會被忽略)

   ul  li:nth-child( n )   // 從 0 開始 每次加1 往后計算,相當於選擇了所有的孩子    這里面必須是 n 不能是其他字母 

  偶數:2n          奇數:2n+1          5的倍數:5n           從第5個開始(包含第5個)到最后:n+5          前5 個(包含第5 個):-n + 5  

  E:first-of-type:指定類型 E 的第一個

  E:last-of-type:指定類型 E 的最后一個

  E:nth-of-type( n ):指定類型 E 的第 n 個

  區別:(兩種相反的查找模式)

   1. nth-child 對父元素里面所有孩子排序選擇(序號是固定的)先找到第 n 個孩子,然后看看是否和 E 匹配

   2. nth-of-type  對父元素里面指定子元素進行排序選擇。先去匹配 E ,然后再根據 E 找第 n 個孩子

3. 偽元素選擇器(重點)  

  偽元素選擇器 可以幫助我們 利用 css 創建新標簽元素,而不需要 HTML 標簽,從而簡化 HTML 結構

  :: before    在元素內部的前面插入內容

  :: after      在元素內部的后面 插入內容

  注意:

  before 和 after 創建一個元素,但是屬於行內元素

  新創建的這個元素在文檔樹種是找不到的,所以我們稱為偽元素

  語法:element::before{ }

  before 和 after 必須有 content 屬性

  before 在父元素內容的前面創建元素,after 在父元素內容的后面插入元素

  偽元素選擇器 和 標簽選擇器一樣,權重為 1

4、結構偽類

 :target    表示對當前活動窗口的控制


免責聲明!

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



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