解析四大CSS屬性值選擇器用法
本文向大家描述一下CSS屬性值選擇器的用法,屬性選擇器的格式是元素后跟中括號(hào),中括號(hào)內(nèi)帶屬性,或者屬性表達(dá)式(不知道描述是否正確,自創(chuàng)的詞),比如h1[title],h1[title="Logo"]等,相信本文介紹你會(huì)學(xué)到很多。
CSS教程:CSS屬性值選擇器
CSS屬性值選擇器(AttributeSelectors),或許你不應(yīng)該對(duì)屬性選擇器感到陌生,從本質(zhì)上說,id跟類選擇器其實(shí)就是屬性值選擇器,只不過是選擇了id或者類的值(value)而已。
屬性選擇器的格式是元素后跟中括號(hào),中括號(hào)內(nèi)帶屬性,或者屬性表達(dá)式(不知道描述是否正確,自創(chuàng)的詞),比如h1[title],h1[title="Logo"]等,你可以從我下面的論述中看到4種具體形式。
1、簡(jiǎn)易CSS屬性值選擇器
只顧其名不顧其值,這是簡(jiǎn)易屬性選擇器的特點(diǎn)。
h1[class]{color:silver;}將會(huì)作用于任何帶class的h1元素,不管class的值是什么。所以<h1class="hoopla">Hello</h1>、<h1class="severe">Serenity</h1>、<h1class="fancy">Fooling</h1>的h1都會(huì)受到這條規(guī)則的影響。
當(dāng)然,這個(gè)“屬性”不僅僅是class或者id,可以是該元素所有合法屬性,比如img的alt,這樣img[alt]{cssdeclarationshere;}將會(huì)作用于任何帶有alt屬性的img元素。那么a[href][title]{font-weight:bold;}呢?聰明的你一定已經(jīng)知道,這會(huì)作用于同時(shí)帶href和title屬性的a元素,比如<ahref="http://www.w3.org/"title="W3CHome">W3C</a>。
2、精確CSS屬性值選擇器
id和類本質(zhì)上就是精確屬性值選擇器,沒錯(cuò),h1#logo等于h1[id="logo"]。如前所述,我們不要局限于id或者class,我們可以使用任何屬性!例如a[href="http://www.w3.org/"][title="W3CHome"]{font-size:200%;}將會(huì)作用于<ahref="http://www.w3.org/"title="W3CHome">W3C</a>。
3、部分CSS屬性值選擇器
如其名,只要屬性值部分匹配(這里的部分,實(shí)際上要匹配整個(gè)單詞)就會(huì)作用于該元素。讓我們來看個(gè)例子:
- <pclasspclass="urgentwarning">
- Whenhandlingplutonium,
- caremustbetakentoavoidtheformationofacriticalmass.</p>
- p[class~="warning"]{font-weight:bold;}
- 和p[class~="urgent"]{font-weight:bold;}
中任何一條都可以讓這個(gè)p的字體變粗。
該選擇器十分有用,比如你要樣式化插圖,其title中都含字符串”Figure”,如title="Figure5:xxx說明",則你可以使用img[title~="Figure"]。
需要注意的是,如我第一句就強(qiáng)調(diào)的,你需要匹配的是整個(gè)單詞,img[title~="Figure"]不會(huì)匹配title="Figure5:xxx說明"。
另外,我做了個(gè)小小的測(cè)試,你把例子中的“Figure”改成“插圖”,把img[title~="Figure"]改成img[title~="插圖"],在Firefox中依然可以匹配,不管編碼(encoding)是GB2312還是UTF-8。看來CSS對(duì)中文的支持還不賴。
4、特殊CSS屬性值選擇器
有點(diǎn)怪,這個(gè)選擇器。它是這樣工作的,嗯,舉個(gè)例子比描述更容易。
*[lang|="en"]{color:white;},這條規(guī)則(rule)將會(huì)選擇屬性lang的值en或者en-打頭的元素。就是說,它可以匹配<h1lang="en">Hello!</h1>、<plang="en-us">Greetings!</p>和<divlang="en-au">G'day!</div>而不匹配<plang="fr">Bonjour!</p>和<h3lang="cy-en">Jrooana!</h3>。
【編輯推薦】
- CSS中實(shí)現(xiàn)DIV容器垂直居中方法揭秘
- CSS布局中float和position屬性使用技巧
- 四種方法輕松實(shí)現(xiàn)CSS隔行換色
- CSS Sprites對(duì)CSS布局的意義及優(yōu)缺點(diǎn)
- CSS布局中display:inline-block屬性用法詳解