Pseudo-elementy CSS
- Poprzednia strona Pseudo-klasy CSS
- Następna strona Przeźroczystość CSS
什么是伪元素?
CSS 伪元素用于设置元素指定部分的样式。
例如,它可用于:
- 设置元素的首字母、首行的样式
- 在元素的内容之前或之后插入内容
语法
伪元素的语法:
selector::pseudo-element { property: value; }
::first-line 伪元素
::first-line
伪元素用于向文本的首行添加特殊样式。
下面的例子为所有 <p> 元素中的首行添加样式:
Przykład
p::first-line { color: #ff0000; font-variant: small-caps; }
注意:::first-line
伪元素只能应用于块级元素。
以下属性适用于 ::first-line
伪元素:
- 属性的字体
- 属性的颜色
- 属性的背景
- word-spacing
- letter-spacing
- text-decoration
- vertical-align
- text-transform
- line-height
- clear
请注意双冒号表示法 - ::first-line
对比 :first-line
在 CSS3 中,双冒号取代了伪元素的单冒号表示法。这是 W3C 试图区分伪类和伪元素的尝试。
在 CSS2 和 CSS1 中,伪类和伪元素都使用了单冒号语法。
为了向后兼容,CSS2 和 CSS1 伪元素可接受单冒号语法。
::first-letter 伪元素
::first-letter
伪元素用于向文本的首字母添加特殊样式。
下面的例子设置所有 <p> 元素中文本的首字母格式:
Przykład
p::first-letter { color: #ff0000; font-size: xx-large; }
注意:::first-letter
伪元素仅适用于块级元素。
下面的属性适用于 ::first-letter 伪元素:
- 属性的字体
- 属性的颜色
- 属性的背景
- 属性的外边距
- 属性的内部边距
- 属性的边框
- text-decoration
- vertical-align (tylko gdy "float" jest "none")
- text-transform
- line-height
- float
- clear
Pseudo-elementy i klasy CSS
Pseudo-elementy mogą być używane z CSS klasami:
Przykład
p.intro::first-letter { color: #ff0000; font-size: 200%; }
Powyższy przykład wyświetli pierwszą literę akapitu o klasie "intro" jako czerwona i z dużą czcionką.
Wiele pseudo-elementów
Można również łączyć kilka pseudo-elementów.
W poniższym przykładzie, pierwsza litera akapitu będzie czerwona, rozmiar czcionki to xx-large. Reszta pierwszej linii będzie niebieska, używając małych kapitali. Reszta akapitu będzie miała domyślny rozmiar czcionki i kolor:
Przykład
p::first-letter { color: #ff0000; font-size: xx-large; } p::first-line { color: #0000ff; font-variant: small-caps; }
CSS - pseudo-element ::before
::before
Pseudo-elementy mogą być używane do wstawienia zawartości przed zawartością elementu.
Poniższy przykład wstawia obraz przed zawartością każdego elementu <h1>:
Przykład
h1::before { content: url(smiley.gif); }
CSS - pseudo-element ::after
::after
Pseudo-elementy mogą być używane do wstawienia zawartości za zawartością elementu.
Poniższy przykład wstawia obraz za zawartością każdego elementu <h1>:
Przykład
h1::after { content: url(smiley.gif); }
CSS - pseudo-element ::selection
::selection
pseudo-elementów pasujących do wybranych części elementu.
Poniższe CSS atrybuty mogą być zastosowane do ::selection
:
color
background
cursor
outline
Poniższy przykład pokazuje, jak wybrane tekst wyświetla się na żółtym tle jako czerwony:
Przykład
::selection { color: red; background: yellow; }
Wszystkie CSS pseudo-elementy
Wybieracz | Przykład | Opis przykładu |
---|---|---|
::after | p::after | Wstaw zawartość za każdym elementem <p>. |
::before | p::before | Wstaw zawartość przed każdym elementem <p>. |
::first-letter | p::first-letter | Wybierz pierwszą literę każdego elementu <p>. |
::first-line | p::first-line | Wybierz pierwszą linię każdego elementu <p>. |
::selection | p::selection | Wybierz część elementu wybranego przez użytkownika. |
Wszystkie CSS pseudoklasy
Wybieracz | Przykład | Opis przykładu |
---|---|---|
:aktywny | a:aktywny | Wybierz aktywny link. |
:zaznaczony | input:zaznaczony | Wybierz każdy <input> element, który jest zaznaczony. |
:wyłączony | input:wyłączony | Wybierz każdy <input> element, który jest w stanie wyłączony. |
:pusty | p:pusty | Wybierz każdy <p> element, który nie ma synów. |
:wlaczony | input:wlaczony | Wybierz każdy <input> element, który jest w stanie włączony. |
:pierwszy-od-ostatniego | p:pierwszy-od-ostatniego | Wybierz każdy <p> element jako pierwszy syn elementu nadrzędnego. |
:pierwszy-od-rodzaju | p:pierwszy-od-rodzaju | Wybierz każdy <p> element jako pierwszy syn elementu nadrzędnego. |
:aktywny | input:aktywny | Wybierz elementy <input>, które są w stanie aktywnym. |
:podkreślony | a:podkreślony | Wybierz linki, nad którymi jest podtrzymany kursor myszy. |
:zakres | input:zakres | Wybierz <input> elementy z wartościami w określonym zakresie. |
:nieważne | input:nieważne | Wybierz wszystkie <input> elementy z nieważnymi wartościami. |
:lang(język) | p:lang(it) | Wybierz każdy <p> element, którego wartość atrybutu lang zaczyna się od "it". |
:ostatni-od-ostatniego | p:ostatni-od-ostatniego | Wybierz każdy <p> element jako ostatni syn elementu nadrzędnego. |
:ostatni-od-rodzaju | p:ostatni-od-rodzaju | Wybierz każdy <p> element jako ostatni syn elementu nadrzędnego. |
:link | a:link | Wybierz wszystkie nieodwiedzone linki. |
:not(selector) | :not(p) | Wybierz każdy element, który nie jest <p>. |
:trzecia(n) | p:trzecia | Wybierz każdy <p> element jako drugi syn elementu nadrzędnego. |
:trzecia-od-ostatniego(n) | p:trzecia-od-ostatniego | Wybierz każdy <p> element jako drugi syn elementu nadrzędnego, licząc od ostatniego syna. |
:trzecia-od-ostatniego(n) | p:trzecia-od-ostatniego | Wybierz każdy element <p>, który jest drugim dzieckiem swojego rodzica, licząc od ostatniego dziecka. |
:nth-of-type(n) | p:nth-of-type(2) | Wybierz każdy element <p>, który jest drugim elementem tego samego typu w swoim rodzicu. |
:only-of-type | p:only-of-type | Wybierz każdy element <p>, który jest jedynym elementem tego samego typu w swoim rodzicu. |
:only-child | p:only-child | Wybierz element <p>, który jest jedynym dzieckiem swojego rodzica. |
:optional | input:optional | Wybierz element <input> bez atrybutu "required". |
:out-of-range | input:out-of-range | Wybierz element <input> o wartości poza określonym zakresem. |
:read-only | input:read-only | Wybierz element <input> z atrybutem "readonly". |
:read-write | input:read-write | Wybierz element <input> bez atrybutu "readonly". |
:required | input:required | Wybierz element <input> z atrybutem "required". |
:root | root | Wybierz pierwotny element elementu. |
:target | #news:target | Wybierz bieżący element #news (kliknij URL zawierający nazwę tego atrybutu). |
:valid | input:valid | Wybierz wszystkie elementy <input> o poprawnych wartościach. |
:visited | a:visited | Wybierz wszystkie odwiedzone linki. |
- Poprzednia strona Pseudo-klasy CSS
- Następna strona Przeźroczystość CSS