1、 css3新增選擇器總結,四路選擇器功能表?
四路選擇器簡介:要使用css對HTML頁面中的元素實現一對一,一對多或者多對一的控制,這就需要用到CSS選擇器。
HTML頁面中的元素就是通過CSS選擇器進行控制的。
1.1 類別選擇器
類選擇器根據類名來選擇
前面以”.”來標志,如:
.demoDiv{
color:#FF0000;
}
在HTML中,元素可以定義一個class的屬性。
如:
<div class="demoDiv">
這個區域字體顏色為紅色
</div>
同時,我們可以再定義一個元素:
<p class="demoDiv">
這個段落字體顏色為紅色
</p>
最后,用瀏覽器瀏覽,我們可以發現所有class為demoDiv的元素都應用了這個樣式。包括了頁面中的div元素和p元素。
上例我們給兩個元素都定義了class,但如果有很多個元素都會應用這個元素,那得一個個的定義元素,就會造成頁面重復的代碼太多,這種現象稱為“多類癥”。
我們可以改成這樣來定義。
<div class="demoDiv">
<div>
這個區域字體顏色為紅色
</div>
同時,我們可以再定義一個元素:
<p>
這個段落字體顏色為紅色
</p>
</div>
這樣,我們就只是定義了一個類,同時把樣式應用到了所有的元素當中。
1.2 標簽選擇器
一個完整的HTML頁面是有很多不同的標簽組成,而標簽選擇器,則是決定哪些標簽
采用相應的CSS樣式,(在大環境中你可能出于不同的位置,但是不管怎么樣,你總
是穿著同一套衣服,這件衣服就是由標簽選擇器事先給你限定好的,不管走到哪里
都是這身衣服)比如,在style.css文件中對p標簽樣式的聲明如下:
p{
font-size:12px;
background:#900;
color:090;
}
復制代碼則頁面中所有p標簽的背景都是#900(紅色),文字大小均是12px,顏色為#090(綠色)
,這在后期維護中,如果想改變整個網站中p標簽背景的顏色,只需要修改
background屬性就可以了,就這么容易!
1.3 ID選擇器
根據元素ID來選擇元素,具有唯一性。
前面以”#”號來標志,在樣式里面可以這樣定義:
#demoDiv{
color:#FF0000;
}
這里代表id為demoDiv的元素的設置它的字體顏色為紅色。
我們在頁面上定義一個元素把它的ID定義為demoDiv,如:
<div id="demoDiv">
這個區域字體顏色為紅色
</div>
用瀏覽器瀏覽,我們可以看到因為區域內的顏色變成了紅色
再定義一個區域
<div>
這個區域沒有定義顏色
</div>
用瀏覽器瀏覽,與預期的一樣,區域沒有應用樣式,所以區域中的字體顏色還是默認的顏色黑色。
1.4 后代選擇器
后代選擇器也稱為包含選擇器,用來選擇特定元素或元素組的后代,后代選擇器用兩個常用選擇器,中間加一個空格表示。其中前面的常用選擇器選擇父元素,后面的常用選擇器選擇子元素,樣式最終會應用于子元素中。
如:
<style>
.father.child{
color:#0000CC;
}
</style>
<p class="father">
黑色
<label class="child">藍色
<b>也是藍色</b>
</label>
</p>
這里我們定義了所有class屬性為father的元素下面的class屬性為child的顏色為藍色。
后代選擇器是一種很有用的選擇器,使用后代選擇器可以更加精確的定位元素。
2、 怎樣區分后代選擇器和子代選擇器?
1.第一從符號上來區分后代選擇器:是用空格來分隔開來 例如<h1>一個<span>人</span>的戰爭</h1> 就是h1 span{}子代選擇器:用特殊符號> 例如 h1>span{}
2.第二從用法上區分后代選擇器html部分:<ul class="study"> <li>物理 <ul> <li>力學</li> <li>聲學</li> <li>電磁學</li> </ul> </li> <li>數學 <ul> <li>微積分</li> <li>概率論</li> <li>博弈論</li> </ul> </li> </ul> css部分//使用子代選擇器的效果.study >li{ border:1px solid red;/*只給物理和數學加一個紅色方框*/}//使用后代選擇器的效果.study li{ border:1px solid red;/*給物理 力學 聲學 電磁學 和數學 微積分 概率論博弈論都加一個紅色方框*/}這說明子代是他是單傳只給物理和數學就斷子絕孫,后代是一代傳一代。
子代選擇器時效果圖:
后代選擇器時效果圖:
3、 CSS樣式是專門用來進行什么的?
CSS即層疊樣式表(Cascading Style Sheets),是一種專門用來表現HTML或XML等文件樣式的計算機語言。
CSS樣式主要包含以下三種類型:
1、行內樣式(內嵌樣式):結構的內部,即寫在標簽內的樣式;寫在標簽的開始部分內部,style屬性當中。
例:<標記 style="樣式的屬性名1:樣式的屬性值1;屬性名2:屬性值2;......"></標記>
2、內部樣式(內聯樣式):寫在HTML頁面內部,存放于head標記當中,樣式寫在style標記內。
例:<style>選擇器 {屬性名:屬性值;屬性名:屬性值;......}</style>
3、外部樣式(外聯樣式):寫在css文件內。
4、 css派生選擇器有幾種?
基本選擇器
1.標簽選擇器:直接用元素的標簽來進行選擇
span { // 直接選擇span標簽
size:16px;
}
1
2
3
1
2
3
2.ID選擇器:通過設置id名字,進行精確的選擇,用#來定義
# div1 { //通過id名字來進行選擇
color:red;
}
<div id="div1">1</div>
1
2
3
4
1
2
3
4
3.類選擇器:通過類名來進行選擇,選擇范圍比id選擇器大,用’.'來定義
.div1 { //所有類名為div1的都被選擇了
color:red;
}
<div id="div1">1</div>
<div id="div1">1</div>
<div id="div1">1</div>
1
2
3
4
5
6
1
2
3
4
5
6
4.通配符選擇器:范圍更大,作用于所有標簽,用*來定義
不建議使用,對頁面加載負擔大
高級選擇器
1.后代選擇器:定義用空格隔開
div span { //選擇的是div標簽下的span標簽,當然后代顧名思義可以不止隔一代,可以隔多代進行選擇
color:red;
}
<div><span>1</span></div>
1
2
3
4
1
2
3
4
2.交集選擇器:與后代選擇器定義的不同是,沒有空格隔開,兩個元素緊挨著
span#a1 { //選擇的是兩個條件1.既是span標簽的 2.id名是a1的元素,兩個條件缺一不可
color:red;
}
<span id=“a1”>1</span>
<span >1</span>
1
2
3
4
5
1
2
3
4
5
3.并集選擇器:定義用逗號隔開
span,#a1 { //選擇的是1.是span標簽的 2.id名是a1的元素,兩個條件滿足一個即可
color:red;
}
<span id=“a1”>1</span>
<span >1</span>
1
2
3
4
5
1
2
3
4
5
4.偽類選擇器:
1.靜態偽類:點擊連接之前(link),點擊連接之后(visited)這樣的
2.動態偽類:鼠標移入(hover),點擊之后(focus)