CSS選擇器

一、什麼是選擇器?

每一條css樣式聲明(定義)由兩部分組成,形式如下:

選擇器{
    樣式;
}

在{}之前的部分就是“選擇器”,“選擇器”指明瞭{}中的“樣式”的作用對象,也就是“樣式”作用於網頁中的哪些元素。

二、標籤選擇器

標籤選擇器其實就是html代碼中的標籤。如<html>、<body>、<h1>、<p>、<img>。例如下面代碼:

p{font-size:12px;line-height:1.6em;}

上面的css樣式代碼的作用:爲p標籤設置12px字號,行間距設置1.6em的樣式。

三、類選擇器

類選擇器在css樣式編碼中是最常用到的,可以實現爲字體設置爲紅色。

語法:

.類選器名稱{css樣式代碼;}

注意:

1、英文圓點開頭

2、其中類選器名稱可以任意起名(但不要起中文噢)

使用方法:

第一步:使用合適的標籤把要修飾的內容標記起來,如下:

<span>我愛CSS</span>

第二步:使用class="類選擇器名稱"爲標籤設置一個類,如下:

<span class="stress">我愛CSS</span>

第三步:設置類選器css樣式,如下:

.stress{color:red;}/*類前面要加入一個英文圓點*/

四、ID選擇器

在很多方面,ID選擇器都類似於類選擇符,但也有一些重要的區別:

1、爲標籤設置id="ID名稱",而不是class="類名稱"。

2、ID選擇符的前面是井號(#)號,而不是英文圓點(.)

示例代碼:

<span id="setGreen">我愛CSS</span>
#setGreen{
   color:green;
}

五、類和ID選擇器的區別

學習了類選擇器和ID選擇器,我們會發現他們之間有很多的相似處,是不是兩者可以通用呢?我們不要着急先來總結一下他們的相同點和不同點:

相同點:可以應用於任何元素
不同點:

1、ID選擇器只能在文檔中使用一次。與類選擇器不同,在一個HTML文檔中,ID選擇器只能使用一次,而且僅一次。而類選擇器可以使用多次。

下面代碼是正確的:

 <p>青春是段跌跌撞撞的旅行,<span class="stress">擁有着後知後覺的美麗</span>,來不及感謝是你給我勇氣,<span class="stress">讓我能做回我自己</span>。</p>

而下面代碼是錯誤的:

<p>青春是段跌跌撞撞的旅行,<span id="stress">擁有着後知後覺的美麗</span>,來不及感謝是你給我勇氣,<span id="stress">讓我能做回我自己</span>。</p>

2、可以使用類選擇器詞列表方法爲一個元素同時設置多個樣式。我們可以爲一個元素同時設多個樣式,但只可以用類選擇器的方法實現,ID選擇器是不可以的(不能使用 ID 詞列表)。

下面的代碼是正確的:

.stress{
    color:red;
}
.bigsize{
    font-size:25px;
}
<p>以夢爲碼<span class="stress bigsize">不負韶華</span>...</p>

上面代碼的作用是爲“不負韶華”四個文字設置文本顏色爲紅色並且字號爲25px。

下面的代碼是不正確的:

#stressid{
    color:red;
}
#bigsizeid{
    font-size:25px;
}
<p>以夢爲碼<span id="stressid bigsizeid">不負韶華</span>...</p>

上面代碼不可以實現爲“不負韶華”四個文字設置文本顏色爲紅色並且字號爲25px的作用。

六、子選擇器

還有一個比較有用的選擇器子選擇器,即大於符號(>),用於選擇指定標籤元素的第一代子元素。

如代碼:

.food>li{border:1px solid red;}

這行代碼會使class名爲food下的子元素li加入紅色實線邊框。

七、包含(後代)選擇器

包含選擇器,即加入空格,用於選擇指定標籤元素下的後輩元素。

如代碼:

.first  span{color:red;}

這行代碼會使第一段文字內容中的span標記的關鍵字字體顏色變爲紅色。

請注意這個選擇器與子選擇器的區別,子選擇器(child selector)僅是指它的直接後代,或者你可以理解爲作用於子元素的第一代後代。而後代選擇器是作用於所有子後代元素。後代選擇器通過空格來進行選擇,而子選擇器是通過“>”進行選擇。

總結:>作用於元素的第一代後代,空格作用於元素的所有後代。

八、通用選擇器

通用選擇器是功能最強大的選擇器,它使用一個(*)號指定,它的作用是匹配html中所有標籤元素,如下使用下面代碼使用html中任意標籤元素字體顏色全部設置爲紅色:

* {color:red;}

九、僞類選擇符

更有趣的是僞類選擇符,爲什麼叫做僞類選擇符,它允許給html不存在的標籤(標籤的某種狀態)設置樣式,比如說我們給html中一個標籤元素的鼠標滑過的狀態來設置字體顏色:

a:hover{color:red;}

上面一行代碼就是爲 a 標籤鼠標滑過的狀態設置字體顏色變紅。

關於僞選擇符:

    關於僞類選擇符,到目前爲止,可以兼容所有瀏鑑器的“僞類選擇符”就是 a 標籤上使用 :hover 了(其實僞類選擇符還有很多,尤其是 css3 中,但是因爲不能兼容所有瀏覽器,本教程只是講了這一種最常用的)。其實 :hover 可以放在任意的標籤上,比如說 p:hover,但是它們的兼容性也是很不好的,所以現在比較常用的還是 a:hover 的組合。

十、分組選擇符

當你想爲html中多個標籤元素設置同一個樣式時,可以使用分組選擇符(,),如下代碼爲右側代碼編輯器中的h1、span標籤同時設置字體顏色爲紅色:

h1,span{color:red;}

它相當於下面兩行代碼:

h1{color:red;}
span{color:red;}


<!--此內容爲學習筆記,包括課程中的知識點和我自己的理解,轉載請註明-->

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章