這里總結(jié)一共有11種選擇器,分別為:
通配符選擇器、類選擇器、id選擇器、元素選擇器(又叫標(biāo)簽選擇器)、屬性選擇器、
偽類選擇器、偽元素選擇器、后代選擇器(又叫包含選擇器)、子元素選擇器、兄弟選擇器(相鄰兄弟選擇器+、通用兄弟選擇器~)、群組選擇器(幾個(gè)共用一個(gè),用逗號(hào)隔開)
(優(yōu)先級(jí):!important>行間樣式>id>class=屬性=偽類選擇器>元素=偽元素選擇器>通配符)
語(yǔ)法:* {屬性名:屬性值;屬性名:屬性值; ........} 為頁(yè)面上的所有元素設(shè)置樣式,優(yōu)先級(jí)最低
*{ margin:0; padding:0; }
語(yǔ)法:.類名{屬性名:屬性值;屬性名:屬性值; .......} 為含有相同類名的元素設(shè)置樣式
<style> .s1{ color:red; } style> <body> <p class=s1>aap> <p class=s2>bbp>cc
body>
語(yǔ)法:#id名{屬性名:屬性值;屬性名:屬性值; .......} 為id屬性值為指定id名的元素設(shè)置樣式
<style> #d1{ color:red; } style> <body> <p id=d1>aap> <p id=d2>bbp> body>
注意:在一個(gè)html文檔中,一個(gè)id名只能使用一次;且不能使用id詞列表
<p id=d1>aap> <p id=d1>bbp> <p id=d2 d3>ccp>
又叫標(biāo)簽選擇器,根據(jù)元素名(標(biāo)簽名)來(lái)設(shè)置樣式
語(yǔ)法:元素名{屬性名:屬性值;屬性名:屬性值; .......} 為所有指定的元素設(shè)置樣式
<style> p{
color:red; } style> <body> <p>aap> <div> <p>bbp> div> <p >ccp> body>
語(yǔ)法:[元素屬性名]{屬性名:屬性值;屬性名:屬性值; .......} 選擇有指定屬性名的元素,而不管元素的該屬性的屬性值是什么
<style> [href]{ color:red; } style> <body> <a href=taobao>taobaoa> <div> <a href=baidu>baidua> div> <a href=tencent >tencentp> body>
語(yǔ)法:[元素屬性="屬性值"]{屬性名:屬性值;屬性名:屬性值; .......} 屬性名和屬性值要完全匹配
<style> [href=taobao]{ color:red; } style> <body> <a href=taobao>taobaoa> <div> <a href=baidu>baidua> div> <a href=tencent >tencentp> body>
語(yǔ)法:[元素屬性^="def"]{屬性名:屬性值;屬性名:屬性值; .......} 相應(yīng)的屬性值以def開頭的元素
[元素屬性$="def"]{屬性名:屬性值;屬性名:屬性值; .......} 相應(yīng)的屬性值以def結(jié)尾的元素
[元素屬性*="def"]{屬性名:屬性值;屬性名:屬性值; .......} 相應(yīng)的屬性值包含def的元素
<style> [href^=t]{ color:red; } [href$=u]{ color:yellow; } [href*=b]{ font-size:30px; } style> <body> <a href=taobao>taobaoa> <div> <a href=baidu>baidua> div> <a href=tencent >tencentp> body>
語(yǔ)法:祖先元素 后代元素 {屬性名:屬性值;屬性名:屬性值; .......} 為具有指定祖先元素的所有后代元素設(shè)置樣式 ,這兩個(gè)元素之間的層次間隔可以是無(wú)限的
<style> .s1 p{ color:red; } style> <body> <p>aap> <div class=s1> <p>bbp> <div> <p>ccp> div> <p>ddp> div> <p >eep> body>
語(yǔ)法:父元素>子元素 {屬性名:屬性值;屬性名:屬性值; .......} 為具有指定父元素的所有子元素設(shè)置樣式,其中子元素為父元素的直接子元素(注意和后代子元素的區(qū)別)
<style> .s1>p{ color:red; } style> <body> <p>aap> <div class=s1> <p>bbp> <div> <p>ccp> div> <p>ddp> div> <p >eep> body>
分為兩種:相鄰兄弟選擇器(+)和通用兄弟選擇器(~)
語(yǔ)法:元素E+元素F {屬性名:屬性值;屬性名:屬性值; .......} 為緊接著E元素后的F元素設(shè)置樣式,且E元素和F元素具有相同的父元素(兩者為兄弟元素)
<style> .s1+p{ color:red; } style> <body> <div> <p>aap> <p class=s1>bbp> <p>ccp> div> <p >ddp> body>
語(yǔ)法:E~F {屬性名:屬性值;屬性名:屬性值; .......} 為E后面的所有能夠匹配F的其兄弟元素F設(shè)置樣式
<style> .s1~p{ color:red; } style> <body> <div> <p>aap> <p class=s1>bbp> <div> <p>ccp> div> <p>ddp> <p>eep> div> <p >ffp> body>
語(yǔ)法:selector: pseudo-element/:: pseudo-element{property:value;........} 通過(guò)添加一些實(shí)際的元素來(lái)向匹配selector選擇器的元素添加一些效果
有以下五種:
①:first-line/::first-line偽元素 用于向文本的首行設(shè)置特殊樣式,只能用于塊級(jí)元素
②:first-letter/::first-letter偽元素 用于向文本的首字母設(shè)置樣式,只能用于塊級(jí)元素
③:before/::before 在元素內(nèi)容之前添加內(nèi)容,屬于該元素,默認(rèn)偽元素是行內(nèi)元素
④:after /::after 在元素內(nèi)容之后添加內(nèi)容,屬于該元素,默認(rèn)偽元素是行內(nèi)元素
⑤::selection 設(shè)置元素在被選擇時(shí)的樣式。
說(shuō)明:CSS3之前,偽元素只有1~4四種(::selection為新增),且均為單冒號(hào)(:),為了和偽類選擇器進(jìn)行區(qū)分,CSS3中規(guī)定,偽元素一律使用雙冒號(hào)(::),但單冒號(hào)依然可以使用,且兼容性更好
<style> div{float:left;margin:20px;} h1{font-size:16px;} p{width:200px;padding:5px 10px;border:1px solid #ffffd;font:14px/1.5 simsun,serif,sans-serif;} .s1 p:first-letter {float:left;font-size:40px;font-weight:bold;line-height:1;} .s1 p::first-letter {float:left;font-size:40px;font-weight:bold;line-height:1;} .s2 p:first-line {color:#090;} .s2 p::first-line {color:#090;} .s3 p::before{content:"haha--";color:red;} .s4 p::after{content:"--haha";color:red;} .s5 p::selection{background:#000;color:#f00;} style> <body> <div class="s1"> <h1>雜志常用的首字下沉效果(first-letter)h1> <p> 今天,陽(yáng)光明媚,晴空萬(wàn)里,非常適合戶外活動(dòng),如踏青、遠(yuǎn)足之類的。長(zhǎng)期 坐在辦公室的同學(xué)們要多注意運(yùn)動(dòng)。 p> div> <div class="s2"> <h1>雜志常用的首字下沉效果(first-line)h1> <p> 今天,陽(yáng)光明媚,晴空萬(wàn)里,非常適合戶外活動(dòng),如踏青、遠(yuǎn)足之類的。長(zhǎng)期 坐在辦公室的同學(xué)們要多注意運(yùn)動(dòng)。 p> div> <div class="s3"> <h1>在元素前添加內(nèi)容(after)h1> <p>this is a testp> div> <div class="s4"> <h1>在元素后添加內(nèi)容(after)h1> <p>this is a testp> div> <div class="s5"> <h1>選中下面的文字,看看它的顏色(selection)h1> <p>你選中這段文字后,看看它們的文本顏色和背景色,就能明白::selection的作用。p> div> body>
效果圖為:
附加一個(gè)after和before的應(yīng)用實(shí)例
語(yǔ)法:selector: pseudo-classes-selector{property:value;........} 向匹配selector選擇器的元素添加一些效果
偽類較多,在此只羅列,不舉例
E:link | CSS1 | 設(shè)置超鏈接a在未被訪問前的樣式。 |
E:visited | CSS1 | 設(shè)置超鏈接a在其鏈接地址已被訪問過(guò)時(shí)的樣式。 |
E:hover | CSS1/2 | 設(shè)置元素在其鼠標(biāo)懸停時(shí)的樣式。 |
E:active | CSS1/2 | 設(shè)置元素在被用戶激活(在鼠標(biāo)點(diǎn)擊與釋放之間發(fā)生的事件)時(shí)的樣式。 |
E:focus | CSS1/2 | 設(shè)置元素在成為輸入焦點(diǎn)(該元素的onfocus事件發(fā)生)時(shí)的樣式。 |
E:lang(fr) | CSS2 | 匹配使用特殊語(yǔ)言的E元素。 |
E:not(s) | CSS3 | 匹配不含有s選擇符的元素E。 |
E:root | CSS3 | 匹配E元素在文檔的根元素。 |
E:first-child | CSS2 | 匹配父元素的第一個(gè)子元素E。 |
E:last-child | CSS3 | 匹配父元素的最后一個(gè)子元素E。 |
E:only-child | CSS3 | 匹配父元素僅有的一個(gè)子元素E。 |
E:nth-child(n) | CSS3 | 匹配父元素的第n個(gè)子元素E。 |
E:nth-last-child(n) | CSS3 | 匹配父元素的倒數(shù)第n個(gè)子元素E。 |
E:first-of-type | CSS3 | 匹配同類型中的第一個(gè)同級(jí)兄弟元素E。 |
E:last-of-type | CSS3 | 匹配同類型中的最后一個(gè)同級(jí)兄弟元素E。 |
E:only-of-type | CSS3 | 匹配同類型中的唯一的一個(gè)同級(jí)兄弟元素E。 |
E:nth-of-type(n) | CSS3 | 匹配同類型中的第n個(gè)同級(jí)兄弟元素E。 |
E:nth-last-of-type(n) | CSS3 | 匹配同類型中的倒數(shù)第n個(gè)同級(jí)兄弟元素E。 |
E:empty | CSS3 | 匹配沒有任何子元素(包括text節(jié)點(diǎn))的元素E。 |
E:checked | CSS3 | 匹配用戶界面上處于選中狀態(tài)的元素E。(用于input type為radio與checkbox時(shí)) |
E:enabled | CSS3 | 匹配用戶界面上處于可用狀態(tài)的元素E。 |
E:disabled | CSS3 | 匹配用戶界面上處于禁用狀態(tài)的元素E。 |
E:target | CSS3 | 匹配相關(guān)URL指向的E元素。 |
偽類和偽元素的區(qū)別:
偽類選擇元素基于的是當(dāng)前元素處于的狀態(tài),或者說(shuō)元素當(dāng)前所具有的特性,而不是元素的id、class、屬性等靜態(tài)的標(biāo)志。由于狀態(tài)是動(dòng)態(tài)變化的,所以一個(gè)元素達(dá)到一個(gè)特定狀態(tài)時(shí),它可能得到一個(gè)偽類的樣式;當(dāng)狀態(tài)改變時(shí),它又會(huì)失去這個(gè)樣式。由此可以看出,它的功能和class有些類似,但它是基于文檔之外的抽象,所以叫偽類。
偽元素是對(duì)元素中的特定內(nèi)容進(jìn)行操作,它所操作的層次比偽類更深了一層,也因此它的動(dòng)態(tài)性比偽類要低得多。實(shí)際上,設(shè)計(jì)偽元素的目的就是去選取諸如元素內(nèi)容第一個(gè)字(母)、第一行,在某些元素的前面或后面添加內(nèi)容這種普通的選擇器無(wú)法完成的工作。它控制的內(nèi)容實(shí)際上和元素是相同的。其中first-letter就是將首字符作為元素的假想子元素。,first-line將首行作為假想的子元素;after和before是在元素的末尾/首部添加子元素
語(yǔ)法:selector1,selector2,selector3,....{property:value;........} 幾種選擇器共用一種樣式,選擇器之間用逗號(hào)隔開
<style> .s1,p{ color:red; } style> <body> <p>aap> <span class=s1>bbspan> <a>cca> body>
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/2290.html
摘要:模糊匹配屬性選擇器標(biāo)題選擇器匹配屬性值以標(biāo)題指定值開頭的每個(gè)元素。選擇器用來(lái)匹配父元素中最后一個(gè)子元素。和和是可用于匹配下標(biāo)是奇數(shù)或偶數(shù)的子元素的關(guān)鍵詞選擇器匹配同類型中的倒數(shù)第個(gè)同級(jí)兄弟元素。 1 2 3 4 5 p{ width:40px; margin:8px auto; line-height:40px; border:1px solid...
摘要:必須要準(zhǔn)確的放置否則聲明無(wú)效。倒影設(shè)置元素的倒影準(zhǔn)確的來(lái)說(shuō)不能算是的東西,但需要知道。默認(rèn)值不可繼承背景漸變漸變是在中新增加的圖片類型使用漸變可以在兩種顏色間制造出平滑的漸變效果用它代替圖片,可以加快頁(yè)面的載入時(shí)間減小帶寬占用。 CSS3主要內(nèi)容 一、CSS選擇器 ? CSS3選擇器規(guī)范地址: https://www.w3.org/TR/2011/RE...? ...
閱讀 735·2023-04-25 19:43
閱讀 3981·2021-11-30 14:52
閱讀 3807·2021-11-30 14:52
閱讀 3871·2021-11-29 11:00
閱讀 3802·2021-11-29 11:00
閱讀 3904·2021-11-29 11:00
閱讀 3580·2021-11-29 11:00
閱讀 6182·2021-11-29 11:00