css中偽類和偽元素的區別

2021-07-25 04:49:25 字數 2187 閱讀 6492

偽類用於向某些選擇器新增特殊的效果。

偽元素用於將特殊的效果新增到某些選擇器。

偽類有::first-child ,:link:,vistited,:hover,:active,:focus,:lang 

偽元素有::first-line,:first-letter,:before,:after

使用偽類:

1

2

3

4

5

6

7

<style>

p>i:first-child

<p>

<i>first

<i>second

如果我們不使用偽類,而希望達到上述效果,可以這樣做:

不使用偽類:

1

2

3

4

5

6

7

<style>

.first-child

<p>

<iclass="first-child">first

<i>second

即我們給第乙個子元素新增乙個類,然後定義這個類的樣式。

使用為元素:

1

2

3

4

<style>

p:first-letter

<p>i am stephen lee.

那麼如果我們不使用偽元素,要達到上述效果,應該怎麼做呢?

不使用為元素:

1

2

3

4

<style>

.first-letter

<p><spanclass='first-letter'>i am stephen lee.

即我們給第乙個字母新增乙個 span,然後給 span 增加樣式。

兩者的區別已經出來了。那就是:

偽類的效果可以通過新增乙個實際的類來達到,而偽元素的效果則需要通過新增乙個實際的元素才能達到,這也是為什麼他們乙個稱為偽類,乙個稱為偽元素的原因。

偽元素和偽類之所以這麼容易混淆,是因為他們的效果類似而且寫法相仿,但實際上 css3 為了區分兩者,已經明確規定了偽類用乙個冒號來表示,而偽元素則用兩個冒號來表示。

1

2

:pseudo-classes         //偽類

::pseudo-elements       //偽元素

但因為相容性的問題,所以現在大部分還是統一的單冒號,但是拋開相容性的問題,我們在書寫時應該盡可能養成好習慣,區分兩者。

CSS 偽類和偽元素的區別

偽類和偽元素 css3規定,偽類由乙個冒號開始,然後為偽類的名稱。例如 after 偽元素由兩個冒號開始,然後為偽元素的名稱。例如 after 偽類的概念 偽類本質上是為了彌補常規css選擇器的不足,以便獲取到更多的資訊。通常表示獲取不存在與dom樹中的資訊,或獲取不能被常規css選擇器獲取的資訊。...

css 偽類和偽類元素的區別

偽類更多的定義的是狀態,如 hover,或者說是乙個可以使用css進行修飾的特定的特殊元素,如 first child 偽類用於當已有元素處於的某個狀態時,為其新增對應的樣式,這個狀態是根據使用者行為而動態變化的。當使用者懸停在指定的元素時,我們可以通過 hover 來描述這個元素的狀態。雖然它和普...

css中的偽元素和偽類的區別

在使用css的時候經常分不清哪些是偽類,哪些是偽元素。可能知道怎麼用,但概念分不清。今天想到這個問題了就自己總結了一下,方便以後檢視。首先談談什麼是偽元素 偽元素不是實際存在的頁面元素,但是其用法和表現行為與真正的頁面元素是一樣的,可以對其使用諸如頁面一樣的css樣式。他的實質是css樣式展示的行為...