Pseudoelementy w CSS pozwalają na stylizację określonych części elementów, takich jak pierwsza litera (::first-letter
) czy pierwsza linia tekstu (::first-line
), a także na tworzenie elementów w strukturze dokumentu, które nie istnieją w HTML, na przykład ::before
i ::after
. Są one nieocenione przy dodawaniu ozdobników, cieni, czy modyfikowaniu wyglądu bez konieczności zmian w HTML.
Najczęściej używane pseudoelementy:
::before
i::after
: Pozwalają na wstawienie treści przed lub po wybranym elemencie.::first-letter
i::first-line
: Stylizują pierwszą literę lub linię tekstu w elemencie blokowym.::selection
: Pozwala na stylizację tekstu zaznaczonego przez użytkownika.
Przykład użycia pseudoelementów
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<title>Przykład pseudoelementów</title>
<style>
/* Stylizacja pierwszej litery */
p::first-letter {
font-size: 200%;
color: red;
}
/* Stylizacja przed i po elemencie */
.decorated::before, .decorated::after {
content: "★";
color: gold;
}
/* Stylizacja zaznaczonego tekstu */
::selection {
background: lightblue;
color: white;
}
</style>
</head>
<body>
<p>Przykładowy tekst z wyróżnioną pierwszą literą i zaznaczeniem.</p>
<p class="decorated">Tekst z dekoracją przed i po.</p>
</body>
</html>
Dobre praktyki
- Używaj pseudoelementów
::before
i::after
do dodawania ozdobników lub małej ilości treści bez zmiany struktury HTML. - Stylizuj
::first-letter
i::first-line
dla eleganckiego wyglądu akapitów, szczególnie w artykułach czy wpisach blogowych. - Zastosuj
::selection
dla spersonalizowanego efektu zaznaczenia tekstu, co może poprawić czytelność i estetykę strony.
Podsumowanie
Pseudoelementy są potężnym narzędziem w arsenale każdego front-end developera, pozwalającym na bardziej zaawansowaną stylizację elementów strony. Dzięki nim można wprowadzać zmiany wizualne bez potrzeby modyfikacji struktury HTML, co jest szczególnie ważne w kontekście utrzymania czystego i semantycznego kodu. Pseudoelementy umożliwiają tworzenie bogatych, interaktywnych i atrakcyjnych interfejsów użytkownika przy minimalnym wysiłku.
Jeżeli chcesz przyśpieszyć swoją naukę tworzenia stron chciałbym polecić mój kurs video Fullstack w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.