CSS 偽元素

CSS偽元素是用來新增一些選擇器的特殊效果。


語法

偽元素的語法:

selector:pseudo-element {property:value;}

CSS類也可以使用偽元素:

selector.class:pseudo-element {property:value;}


:first-line 偽元素

"first-line" 偽元素用於向文字的首行設定特殊樣式。

在下面的例子中,瀏覽器會根據 "first-line" 偽元素中的樣式對 p 元素的第一行文字進行格式化:

例項

p:first-line { color:#ff0000; font-variant:small-caps; }

嘗試一下 ?

注意:"first-line" 偽元素只能用於塊級元素。

注意: 下面的屬性可應用於 "first-line" 偽元素:

  • font properties
  • color properties
  • background properties
  • word-spacing
  • letter-spacing
  • text-decoration
  • vertical-align
  • text-transform
  • line-height
  • clear

:first-letter 偽元素

"first-letter" 偽元素用於向文字的首字母設定特殊樣式:

例項

p:first-letter { color:#ff0000; font-size:xx-large; }

嘗試一下 ?

注意: "first-letter" 偽元素只能用於塊級元素。

注意: 下面的屬性可應用於 "first-letter" 偽元素:

  • font properties
  • color properties
  • background properties
  • margin properties
  • padding properties
  • border properties
  • text-decoration
  • vertical-align (only if "float" is "none")
  • text-transform
  • line-height
  • float
  • clear

偽元素和CSS類

偽元素可以結合CSS類:

p.article:first-letter {color:#ff0000;}

<p class="article">文章段落</p>

上面的例子會使所有 class 為 article 的段落的首字母變為紅色。


多個偽元素

可以結合多個偽元素來使用。

在下面的例子中,段落的第一個字母將顯示為紅色,其字型大小為 xx-large。第一行中的其餘文字將為藍色,並以小型大寫字母顯示。

段落中的其餘文字將以預設字型大小和顏色來顯示:

例項

p:first-letter { color:#ff0000; font-size:xx-large; } p:first-line { color:#0000ff; font-variant:small-caps; }

嘗試一下 ?


CSS - :before 偽元素

":before" 偽元素可以在元素的內容前面插入新內容。

下面的例子在每個 <h1>元素前面插入一幅圖片:

例項

h1:before { content:url(smiley.gif); }

嘗試一下 ?


CSS - :after 偽元素

":after" 偽元素可以在元素的內容之後插入新內容。

下面的例子在每個 <h1> 元素後面插入一幅圖片:

例項

h1:after { content:url(smiley.gif); }

嘗試一下 ?


所有CSS偽類/元素

選擇器 示例 示例說明
:link a:link 選擇所有未訪問連結
:visited a:visited 選擇所有訪問過的連結
:active a:active 選擇正在活動連結
:hover a:hover 把滑鼠放在連結上的狀態
:focus input:focus 選擇元素輸入後具有焦點
:first-letter p:first-letter 選擇每個<p> 元素的第一個字母
:first-line p:first-line 選擇每個<p> 元素的第一行
:first-child p:first-child 選擇器匹配屬於任意元素的第一個子元素的 <p> 元素
:before p:before 在每個<p>元素之前插入內容
:after p:after 在每個<p>元素之後插入內容
:lang(language) p:lang(it) 為<p>元素的lang屬性選擇一個開始值