虛擬元素/類別選擇器



虛擬類別選擇器(Pseudo-classes Selector)是針對特定的疑似狀態進行樣式指定,例如入力的狀態、連結的狀態、滑鼠移動的狀態等(link、active、visited、hover、focus、lang)。虛擬元素(Pseudo-elements Selector),是針對元素內特定的虛擬子元素、文字、行等進行樣式指定,亦可以在元素前後增加文字和畫像(first-child、first-line、first-letter、befor、after)。但是,各種網頁瀏覽器的支援疑似元素/類別選擇器的狀態不一,需要注意。

Pseudo Selector

選擇器內的元素和虛擬元素/類別之間,使用(:)符號區隔。宣告區以一組大括號({ })括弧起來,裡面可以宣告0個以上的屬性及其屬性值。屬性和屬性值之間用(:)冒號區隔起來,屬性定義之間和最後結尾必須加上(;)分號。注意,屬性值不須加上('')單引號或(" ")雙引號


虛擬類別選擇器(Pseudo-classes Selector)

Type Selector td:hover { color : #f00 ; }

虛擬類別有下列幾種:

a:link
 
宣告區的樣式套用於未參觀的連結
(例a:link { color : #00f ; })
a:visited
 
宣告區的樣式套用於已參觀過的連結
(例a:visited { color : #369 ; })
元素:acitve
 
宣告區的樣式套用於點選過的元素上
(例a:acitve { color : #f00 ; })
元素:hover
 
宣告區的樣式套用於滑鼠游標移動至對象元素時
(例a:hover { color : #ddd ; }、td:hover { color : #f00 ; })
元素:focus
 
宣告區的樣式套用於操作焦點至對象Form元素時(inputtextarea元素)
(例textarea:focus { background : pink ; })
元素:lang(語言碼)
 
宣告區的樣式套用於對象語言碼的元素
(例p:lang(zh-tw) { color : red ; })
*1)Window IE 6前的版本,acitve、hover只適用於a元素,IE 7以後所有元素皆適用。
*2)Window IE 6、7前的版本,focus、lang皆不適用。

虛擬元素選擇器(Pseudo-elements Selector)

Type Selector li:befor { content : "→" ; }

虛擬元素有下列幾種:

元素:first-child
 
宣告區的樣式套用於對象元素內的第1個子元素
(例p:first-child { text-indent : 0 ; })
元素:first-line
 
宣告區的樣式套用於對象元素內的第1行((自動換行、強置換行前)
(例p:first-line { font-size : 150% ; })
元素:first-letter
 
宣告區的樣式套用於對象元素內的第1個文字
(例p:first-letter { font-size : 150% : })
元素:before
 
指定對象元素之前加入content屬性值(文字列、圖像等)
(例li:befor { content : "→" ; })
元素:after
 
指定對象元素之後加入content屬性值(文字列、圖像等)
(例h1:after { content : url(more.gif) ; })
*1)Window IE 6、7前的版本,first-child、before、after皆不適用。



Copyright(C)2009超技情報開發研究室 All rights reserved.