一些新手朋友對選擇器一知半解,不知道在什麼情況下運用什麼樣的選擇器,這是一個比較頭疼的問題,針對新手朋友,對CSS選擇器作一些簡單的說明,希望能對大家的學習工作有一定的幫助,更多的CSS知識請參考Webjx.com的其他文章。
准確而簡潔的運用CSS選擇器會達到非常好的效果。我們不必通篇給每一個元素定義類(class)或ID,通過合適的組織,可以用最簡單的方法實現同樣的效果。在實際工作中,最常用的選擇器有以下五類:
一、標簽選擇器: 顧名思議,標簽選擇器是直接將HTML標簽作為選擇器,可以是p、h1、dl、strong等Html標簽。如:
p { font:12px;}
em { color:blue;}
dl { float:left; margin-top:10px;}
二、id選擇器: 我們通常給頁面元素定義id。例如定義一個層 <div id="menubar"></div> 然後在樣式表裡這樣定義:
#menubar {
margin:0 auto;
background:#ccc;
color:#c00;
}
其中"menubar"是你自己定義的id名稱。注意在前面加"#"號。
id選擇器也同樣支持後代選擇器,例如: #menubar p { text-align:center; line-height:20px;; } 這個方法主要用來定義層和那些比較復雜,有多個“唯一後代”的元素。
三、類(class)選擇器: 在CSS裡用一個點開頭表示類別選擇器定義,例如:
.da1 {
color:#f60;
font-size:14px ;
}
在頁面中,用class="類別名"的方法調用: <span class="da1">14px大小的字體</span> 這個方法比較簡單靈活,可以隨時根據頁面需要新建和刪除。但需要避免多class綜合症。
四、群組選擇器: 當幾個元素樣式屬性一樣時,可以共同調用一個聲明,元素之間用逗號分隔。如:
p, td, li {
line-height:20px;
color:#c00;
}
#main p, #sider span {
color:#000;
line-height:26px;
}
.www_52CSS_com,#main p span {
color:#f60;
}
.text1 h1,#sider h3,.art_title h2 {
font-weight:100;
}
使用組群選擇器,將會大大的減化CSS代碼,將具有多個相同屬性的元素,合並群組進行選擇,定義同樣的CSS屬性,這大大的提高了編碼效率與CSS文件體積。
五、後代選擇器: 後代選擇器也叫派生選擇器。可以使用後代選擇器給一個元素裡的子元素定義樣式,例如這樣:
li strong {
font-style:italic;
font-weight:800;
color:#f00;
}
#main p {
color:#000;
line-height:26px;
}
#sider .con span {
color:#000;
line-height:26px;
}
.www_52CSS_com p span {
color:#f60;
}
#sider ul li.subnav1 {
margin-top:5px;
}
第一段,就是給li下面的子元素strong定義一個斜體加粗而且套紅的樣式。其他以此類推。
後代選擇器的使用是非常有益的,如果父元素內包括的Html元素具有唯一性,則不必給內部元素再指定class或id,直接應用此選擇器即可,例如下面的h3與ul就不必指定class或id。
<div id="sider">
<h3></h3>
<ul>
<li>...</li>
<li>...</li>
<li>...</li>
</ul>
</div>
在這裡CSS就可以及樣寫:
#sider h3 {...}
#sider ul {...}
#sider ul li {...}
結合使用上面的四種CSS選擇器,基本滿足了CSS布局的需要,主要在於靈活的使用,特別是後代選擇器的使用能大大的簡化HTML文檔,使Html做到結構化明確,最小的代碼實現同樣的效果。
CSS中用四個偽類來定義鏈接的樣式,分別是:a:link、a:visited、a:hover和a : active。
例如:
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
a:active {font-weight : bold ;text-decoration : none ;color : #F90 ;}
以上語句分別定義了"鏈接、已訪問過的鏈接、鼠標停在上方時、點下鼠標時"的樣式。注意,必須按以上順序寫,否則顯示可能和你預期的不一致。記住它們的順序是“
LVHA”。