CSS選擇器常見的有哪幾種?

CSS選擇器常見的有哪幾種?

一、簡(jiǎn)單選擇器 Simple Selectors

選擇器 含義
* 通用元素選擇器,匹配任何元素
E 標(biāo)簽選擇器,匹配所有使用E標(biāo)簽的元素
.info class選擇器,匹配所有class屬性中包含info的元素
#footer id選擇器,匹配所有id屬性等于footer的元素

二、屬性選擇器 Attribute Selectors

選擇器 含義
[atrr] 選擇包含 attr 屬性的所有元素,不論 attr 的值為何
[attr=val] [attr=val] 僅選擇 attr 屬性被賦值為 val 的所有元素

三、組合選擇器 Combinators

選擇器 含義
A, B 選中匹配 A 或/和 B 的元素
A B 選中匹配 B 且為匹配 A 的元素的后代元素(A B之間空格分開)
A > B 選中匹配 B 且為匹配 A 的元素的直接子元素
A + B 選中匹配 B 且為匹配 A 的元素的下一相鄰元素
A ~ B 選中匹配 B 且為匹配 A 的元素的下 N 個(gè)相鄰元素

四、偽類 Pseudo-classes

選擇器 含義
a:link 匹配所有未被點(diǎn)擊的鏈接
a:visited 匹配所有已被點(diǎn)擊的鏈接
a:hover 匹配鼠標(biāo)懸停其上的a元素
a:active 匹配鼠標(biāo)已經(jīng)其上按下、還沒(méi)有釋放的a元素
li:first-child 匹配父元素的第一個(gè)子元素li
li:last-child 匹配父元素的最后一個(gè)子元素li
li:nth-child(n) 匹配父元素的第n個(gè)子元素li(odd奇數(shù),even偶數(shù))

五、偽元素 Pseudo-elements

選擇器 含義
E::before 在E元素內(nèi)創(chuàng)建一個(gè)子元素,插入生成的內(nèi)容作為偽元素,放在最前面
E::after 在E元素內(nèi)創(chuàng)建一個(gè)子元素,插入生成的內(nèi)容作為偽元素,放在最后面
E::selection 應(yīng)用于文檔中被用戶高亮的部分(比如使用鼠標(biāo)選中的部分)
E::first-letter 匹配E元素的第一個(gè)字母第一行的第一個(gè)字母
E::first-line 匹配E元素的第一行

六、多重選擇器 Multiple Selectors

在HTML中,我們有時(shí)會(huì)對(duì)同一個(gè)標(biāo)簽賦予多個(gè)class名稱,如:

<div class="one two"></div>

而在CSS里面則可能同時(shí)選擇多個(gè)class,像是:

.one .two{}    /*兩個(gè) class 中有空格*/
.one.two{}     /*兩個(gè) class 中沒(méi)有空格*/
.one, .two{}   /*兩個(gè) class 中出現(xiàn)逗號(hào)*/

這三者 one.two{ }.one .two{ },或者是.one, .two{ }有何區(qū)別?

  • 第一個(gè)的 one 和 two 中間包含空格,意思是指,我必須要是在 one 裡面的 two,才會(huì)被選擇到。
  • 第二個(gè)的 one 和 two 中間沒(méi)有包含空格,表示某個(gè)區(qū)塊必須同時(shí)具有 one 和 two 的 class 時(shí),才能被 CSS 所選擇到到。
  • 第三個(gè)的 one 和 two 中間包含逗號(hào),意思是指 class 中有 one 或 two,都會(huì)被編輯器所選擇到。

簡(jiǎn)單來(lái)說(shuō),沒(méi)空格表示必須同時(shí)包含才會(huì)被選取;有空格表示后面的 class 被鑲嵌在前面的 class 中才會(huì)被選??;逗號(hào)則表示只要有其中一個(gè) class 就會(huì)被選取到 。


文中參考了如下內(nèi)容:

CSS選擇器筆記——阮一峰的網(wǎng)絡(luò)日志
CSS中的多重選擇器——PJCHENder

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.CSS 元素選擇器 最常見的 CSS 選擇器是元素選擇器。換句話說(shuō),文檔的元素就是最基本的選擇器。如果設(shè)置 H...
    饑人谷_小侯閱讀 951評(píng)論 0 1
  • id選擇器 先看看class屬性和id屬性的區(qū)別吧。 id id用于定義唯一的標(biāo)識(shí)符,它是一個(gè)全局屬性,在整個(gè)HT...
    知更鳥_b4d4閱讀 774評(píng)論 0 0
  • 轉(zhuǎn)載自牢記31種CSS選擇器用法 1 * 星號(hào)選擇器用于選取頁(yè)面中的所有元素,可用于快速清除所有元素的 margi...
    Icestains閱讀 1,387評(píng)論 0 1
  • 簡(jiǎn)介網(wǎng)絡(luò)瀏覽器很可能是使用最廣的軟件。在這篇入門文章中,我將會(huì)介紹它們的幕后工作原理。我們會(huì)了解到,從您在地址欄輸...
    wengjq閱讀 2,324評(píng)論 2 15
  • 學(xué)習(xí)CSS的最佳網(wǎng)站沒(méi)有之一 http://www.w3school.com.cn/tags/index.asp ...
    Amyyy_閱讀 1,197評(píng)論 0 1

友情鏈接更多精彩內(nèi)容