CSS的選擇器其實(shí)大類(lèi)的話可以分為三類(lèi),即id選擇器、class選擇器、標(biāo)簽選擇器。
成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),綠春企業(yè)網(wǎng)站建設(shè),綠春品牌網(wǎng)站建設(shè),網(wǎng)站定制,綠春網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,綠春網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
用法如下:
#id名 { 屬性名:屬性值; }
.class名 { 屬性名:屬性值; }
標(biāo)簽名 { 屬性名:屬性值; }
其中,他們之間又可以以不同的方式進(jìn)行組合,如下:
后代選擇器: 父代名 后代名 { 屬性名:屬性值; }
子代選擇器: 父代名子代名 { 屬性名:屬性值; }
群組選擇器: #name1, .name2, #name div { 屬性名:屬性值; }
偽類(lèi)選擇器: name:偽類(lèi)
通用(通配符)選擇器: * { 屬性名: 屬性值; }……
常用的也就這些。
純手打,望采納。我的百度個(gè)人簡(jiǎn)介里面還有博客網(wǎng)址,想看一些我資料歡迎進(jìn)入我的博客。
CSS選擇器的類(lèi)型分為3類(lèi):標(biāo)記選擇器、類(lèi)別選擇器和ID選擇器。(可能名稱有不同的說(shuō)法,但意思都是一樣的)
標(biāo)記選擇器是利用HTML的標(biāo)記直接定義標(biāo)記內(nèi)容的樣式,如:h1{
color:red;
font-size:25pt;}
類(lèi)別選擇器是通常說(shuō)的class選擇器,定義的時(shí)候要在名稱前加.如:.one{
color:red;
font-size:25pt;}
ID選擇器定義的時(shí)候要在前面加#,如:#box
{
color:red;
font-size:25pt;}
利用DW寫(xiě)CSS的時(shí)候,高級(jí)就是上面說(shuō)的ID選擇器,ID選擇器的名字可以任意命名,可以自己定義,可是標(biāo)簽就只能是HTML語(yǔ)言里制定的那些標(biāo)記,不能自己定義。
css3選擇器如下:
一、通配符選擇器(*)
通配符選擇器是用來(lái)選擇所有元素,,也可以選擇某個(gè)元素下的所有元素。
二、元素選擇器(E)
元素選擇器,是css選擇器中最常見(jiàn)而且最基本的選擇器。
三、類(lèi)選擇器(.className)
類(lèi)選擇器是以一獨(dú)立于文檔元素的方式來(lái)指定樣式,使用類(lèi)選擇器之前需要在html元素上定義類(lèi)名
四、id選擇器(#ID)
ID選擇器和上面說(shuō)的類(lèi)選擇器是很相似的,在使用ID選擇器之前也需要先在html文檔中加注ID名稱,這樣在樣式選擇器中才能找到相對(duì)應(yīng)的元素,不同的是ID選擇器是一個(gè)頁(yè)面中唯一的值,我們?cè)陬?lèi)使用時(shí)是在相對(duì)應(yīng)的類(lèi)名前加上一個(gè)“.”號(hào)(.className)而id選擇器是在名稱前使用"#"如(#id),
五、后代選擇器(E F)
后代選擇器也被稱作包含選擇器,所起作用就是可以選擇某元素的后代元素,比如說(shuō):E?
F,前面E為祖先元素,F(xiàn)為后代元素,所表達(dá)的意思就是選擇了E元素的所有后代F元素,請(qǐng)注意他們之間需要一個(gè)空格隔開(kāi)。
六、子元素選擇器(Egt;F)
子元素選擇器只能選擇某元素的子元素,其中E為父元素,而F為子元素,其中Egt;F所表示的是選擇了E元素下的所有子元素F。這和后代選擇器(E?
F)不一樣,在后代選擇器中F是E的后代元素,而子元素選擇器E gt; F,其中F僅僅是E的子元素而以。
七、相鄰兄弟元素選擇器(E + F)
相鄰兄弟選擇器可以選擇緊接在另一元素后的元素,而且他們具有一個(gè)相同的父元素,換句話說(shuō),EF兩元素具有一個(gè)相同的父元素,而且F元素在E元素后面,而且相鄰,這樣我們就可以使用相鄰兄弟元素選擇器來(lái)選擇F元素。
1、標(biāo)簽選擇器
p{color:red;}
什么是標(biāo)簽選擇器?
根據(jù)指定標(biāo)簽名稱,在當(dāng)前界面中找到所有該名稱的標(biāo)簽,并設(shè)置屬性
注意點(diǎn):
標(biāo)簽選擇器選中的是當(dāng)前界面所有同名標(biāo)簽,不能單獨(dú)選中
只要是HTML中的標(biāo)簽都可以作為標(biāo)簽選擇器
2、id選擇器
#id{color:red;}
什么是id選擇器?
根據(jù)指定標(biāo)簽的id,在當(dāng)前界面中找到該id的標(biāo)簽,并設(shè)置屬性
注意點(diǎn):
每個(gè)HTML標(biāo)簽都有id屬性
同一個(gè)界面中id是唯一的,不能重復(fù)
編寫(xiě)id選擇器必須要在id前面加上一個(gè)#號(hào)
id的名稱有一定的規(guī)范,只能由字母數(shù)字和下劃線組成
id的名稱不能夠以數(shù)字開(kāi)頭
id的名稱不能與HTML標(biāo)簽同名
如果僅僅是為了設(shè)置樣式,我們不會(huì)使用id,因?yàn)榍岸伍_(kāi)發(fā)中id是留給js使用的
3、類(lèi)選擇器
.class{color:red;}
什么是類(lèi)選擇器?
根據(jù)指定標(biāo)簽的類(lèi),在當(dāng)前界面中找到該類(lèi)的標(biāo)簽,并設(shè)置屬性
注意點(diǎn)
每個(gè)HTML標(biāo)簽都有class屬性
同一個(gè)界面中class屬性是可以重復(fù)
編寫(xiě)class選擇器必須要在class名稱前面加上一個(gè).號(hào)
class的名稱有一定的規(guī)范,只能由字母數(shù)字和下劃線組成
class的名稱不能夠以數(shù)字開(kāi)頭
class的名稱不能與HTML標(biāo)簽同名
class就是專門(mén)給某一類(lèi)標(biāo)簽設(shè)置樣式的
一個(gè)標(biāo)簽可以同時(shí)綁定多個(gè)class屬性
p class="p1 p2 p3"Test paragraph/p,這樣就綁定了三個(gè)類(lèi)屬性
類(lèi)選擇器實(shí)踐,通過(guò)對(duì)不同類(lèi)的組合來(lái)實(shí)現(xiàn)不同的效果
css常用的四種選擇器類(lèi)型有:
標(biāo)簽選擇器:針對(duì)一類(lèi)標(biāo)簽
ID選擇器:針對(duì)某一個(gè)特定的標(biāo)簽使用
類(lèi)選擇器:針對(duì)你想要的所有標(biāo)簽使用
后代選擇器:用空格隔開(kāi)
1、標(biāo)簽選擇器:選擇器的名字代表html頁(yè)面上的標(biāo)簽
標(biāo)簽選擇器,選擇的是頁(yè)面上所有這種類(lèi)型的標(biāo)簽,所以經(jīng)常描述“共性”,無(wú)法描述某一個(gè)元素的“個(gè)性”。
舉例:
style type="text/css"
p{
font-size:14px;
}
/style
body
pcss/p
/body
再比如說(shuō),想讓“學(xué)完了安卓,繼續(xù)學(xué)前端喲”這句話中的“前端”兩個(gè)變?yōu)榧t色字體,那么可以用span標(biāo)簽把“前端”這兩個(gè)字圍起來(lái),然后給span標(biāo)簽加一個(gè)標(biāo)簽選擇器。
代碼如下:
!DOCTYPE html
html
head
meta charset="UTF-8"
titleDocument/title
style type="text/css"
span{
color: red;
}
/style
/head
body
p學(xué)完了安卓,繼續(xù)學(xué)span前端/span喲/p
/body
/html
【總結(jié)】需要注意的是:
(1)所有的標(biāo)簽,都可以是選擇器。比如ul、li、label、dt、dl、input、div等。
(2)無(wú)論這個(gè)標(biāo)簽藏的多深,一定能夠被選擇上。
(3)選擇的所有,而不是一個(gè)。
2、ID選擇器:規(guī)定用#來(lái)定義(名字自定義)
針對(duì)某一個(gè)特定的標(biāo)簽來(lái)使用,只能使用一次。css中的ID選擇器以”#”來(lái)定義。
舉例:
head
titleDocument/title
style type="text/css"
#mytitle
{
border:3px dashed green;
}
/style
/head
然后在別處使用id來(lái)引用它:
body
h2 id="mytitle"你好/h2
/body
id選擇器的選擇符是“#”。
任何的HTML標(biāo)簽都可以有id屬性。表示這個(gè)標(biāo)簽的名字。這個(gè)標(biāo)簽的名字,可以任取,但是:
(1)只能有字母、數(shù)字、下劃線。
(2)必須以字母開(kāi)頭。
(3)不能和標(biāo)簽同名。比如id不能叫做body、img、a。
(4)大小寫(xiě)嚴(yán)格區(qū)分,也就是說(shuō)aa,和AA是兩個(gè)不同的ID
另外,特別強(qiáng)調(diào)的是:HTML頁(yè)面,不能出現(xiàn)相同的id,哪怕他們不是一個(gè)類(lèi)型。比如頁(yè)面上有一個(gè)id為pp的p,一個(gè)id為pp的div,是非法的!
一個(gè)標(biāo)簽可以被多個(gè)css選擇器選擇:
比如,可以同時(shí)讓標(biāo)簽選擇器和id選擇器作用于同一個(gè)標(biāo)簽。(用到了層疊)如下:
請(qǐng)點(diǎn)擊輸入圖片描述
然后通過(guò)網(wǎng)頁(yè)的審查元素看一下效果:
請(qǐng)點(diǎn)擊輸入圖片描述
現(xiàn)在,假設(shè)選擇器沖突了,比如id選擇器說(shuō)這個(gè)文字是紅色的,標(biāo)簽選擇器說(shuō)這個(gè)文字是綠色的。那么聽(tīng)誰(shuí)的?
實(shí)際上,css有著非常嚴(yán)格的計(jì)算公式,能夠處理沖突.
一個(gè)標(biāo)簽可以被多個(gè)css選擇器選擇,共同作用,這就是“層疊式”的第一層含義
3、類(lèi)選擇器:規(guī)定用圓點(diǎn).來(lái)定義
類(lèi)選擇器.?針對(duì)想要的所有標(biāo)簽使用。優(yōu)點(diǎn):靈活。
css中用.來(lái)表示類(lèi)。舉例如下:
style type="text/css"
.oneclass/*定義類(lèi)選擇器*/{
width:800px;
}
/style
/head
然后在別處使用class來(lái)引用它:
body
h2 class="oneclass"你好/h2
/body
和id非常相似,任何的標(biāo)簽都可以攜帶id屬性和class屬性。但是id屬性只能被某一特定標(biāo)簽引用一次
class屬性的特點(diǎn):
特性1:類(lèi)選擇器可以被多種標(biāo)簽使用。
特性2:同一個(gè)標(biāo)簽可以使用多個(gè)類(lèi)選擇器。用空格隔開(kāi)。舉例如下
h3 class="classone ?classtwo"我是一個(gè)h3啊/h3
而不能寫(xiě)成:
h3 class="teshu" class="zhongyao"我是一個(gè)h3啊/h3
類(lèi)選擇器使用的舉例:
類(lèi)選擇器的使用,能夠決定一個(gè)人的css水平。
應(yīng)該注意:
(1)不要去試圖用一個(gè)類(lèi)名,把某個(gè)標(biāo)簽的所有樣式寫(xiě)完。這個(gè)標(biāo)簽要多攜帶幾個(gè)類(lèi),共同完成這個(gè)標(biāo)簽的樣式。
(2)每一個(gè)類(lèi)要盡可能小,有“公共”的概念,能夠讓更多的標(biāo)簽使用。
如:
style type="text/css"
.lv{
color: green;
}
.da{
font-size: 30px;
}
.underline{
text-decoration: underline;
}
/style
然后讓每個(gè)標(biāo)簽去選取自己想要用的類(lèi)選擇器:
p class="lv da"段落1/p
p class="lv xian"段落2/p
p class="da xian"段落3/p
問(wèn)題:到底用id還是用class?
答案:盡可能的用class,除非極特殊的情況可以用id。
原因:id是js用的。也就是說(shuō),js要通過(guò)id屬性得到標(biāo)簽,所以css層面盡量不用id,要不然js就很別扭。另一層面,會(huì)認(rèn)為一個(gè)有id的元素,有動(dòng)態(tài)效果。
舉例如下:
請(qǐng)點(diǎn)擊輸入圖片描述
上圖所示,css和js都在用同一個(gè)id,會(huì)出現(xiàn)不好溝通的情況。
記住這句話:類(lèi)上樣式,id上行為。意思是說(shuō),class屬性交給css使用,id屬性交給js使用。
上面這三種選擇器的區(qū)別:
標(biāo)簽選擇器針對(duì)的是頁(yè)面上的一類(lèi)標(biāo)簽。
ID選擇器是只針對(duì)特定的標(biāo)簽(一個(gè)),ID是此標(biāo)簽在此頁(yè)面上的唯一標(biāo)識(shí)。
類(lèi)選擇器可以被多種標(biāo)簽使用。
4、后代選擇器: 定義的時(shí)候用空格隔開(kāi)
對(duì)于E F這種格式,表示所有屬于E元素后代的F元素,有這個(gè)樣式。空格就表示后代。
后代選擇器,就是一種平衡:共性、特性的平衡。當(dāng)要把某一個(gè)部分的所有的什么,進(jìn)行樣式改變,就要想到后代選擇器。
后代選擇器,描述的是祖先結(jié)構(gòu)。
看定義可能有點(diǎn)難理解,我們來(lái)看例子吧。
舉例1:
style type="text/css"
.div1 p{
color:red;
}
/style
空格就表示后代。.div1 p 表示.div1的后代所有的p。
這里強(qiáng)調(diào)一下:這兩個(gè)標(biāo)簽不一定是連續(xù)緊挨著的,只要保持一個(gè)后代的關(guān)聯(lián)即可。也就是說(shuō),選擇的是后代,不一定是兒子。
舉例:
style type="text/css"
h3 b i{
color:red ;
}
/style
上方代碼的意思是說(shuō):定義了h3標(biāo)簽中的b標(biāo)簽中的i標(biāo)簽的樣式。
同理:h3和b和i標(biāo)簽不一定是連續(xù)緊挨著的,只要保持一個(gè)后代的關(guān)聯(lián)即可。
效果:
請(qǐng)點(diǎn)擊輸入圖片描述
或者還有下面這種寫(xiě)法:
請(qǐng)點(diǎn)擊輸入圖片描述
上面的這種寫(xiě)法,h3標(biāo)簽和i標(biāo)簽并不是緊挨著的,但他們保持著一種后代關(guān)系。
還有下面這種寫(xiě)法:(含類(lèi)選擇器、id選擇器都是可以的)
請(qǐng)點(diǎn)擊輸入圖片描述
在開(kāi)頭說(shuō)了:后代選擇器,描述的是一種祖先結(jié)構(gòu)。舉個(gè)例子來(lái)說(shuō)明這句話:
!DOCTYPE html
html
head
meta charset="UTF-8"
titleDocument/title
style type="text/css"
? ?div div p{
? ? ? ?color: red;
? ?}
? ?.div2{...}
? ?.div3{...}
? ?.div4{...}
/style
/head
body
div
? ?div
? ? ? ?div
? ? ? ? ? ?div
? ? ? ? ? ? ? ?p我是什么顏色?/p
? ? ? ? ? ?/div
? ? ? ?/div
? ?/div
/div
/body
/html
上面css中的div div p,也能使文字的顏色變紅。通過(guò)瀏覽器的審查元素,我們可以看到 p元素的祖先列表:
請(qǐng)點(diǎn)擊輸入圖片描述