3. CSS3 - język opisu wyglądu

3.3. Pseudoklasy

Pseudoklasy dynamiczne
  • Stylizują elementy w zależności od interakcji użytkownika:
    • :hover – styl dla elementu, gdy użytkownik najeżdża na niego myszką,
    • :focus – styl dla elementu, który ma fokus (np. aktywne pole formularza),
    • :active – styl dla elementu w momencie klikania.
button:hover {
    background-color: lightblue;
}
Zmienia kolor tła przycisku, gdy użytkownik najeżdża na niego kursorem.
Pseudoklasy strukturalne
  • Pozwalają stylizować elementy na podstawie ich pozycji w dokumencie:
    • :first-child – styl dla pierwszego dziecka w danym rodzicu,
    • :last-child – styl dla ostatniego dziecka w danym rodzicu,
    • :nth-child( n ) – styl dla dziecka na określonej pozycji,
    • :nth-last-child( n ) - jak wyżej, ale pozycja jest wyliczana od ostatniego elementu, a nie od pierwszego.
li:nth-child(odd) {
    background-color: #f0f0f0;
}
Stylizuje co drugi element <li> (zaczynając od pierwszego).
Warto tutaj nadmienić, że możliwości pseudoklasy :nth-child( n ) pozwalają na wybieranie stylowanych elementów na różne sposoby.
  • :nth-child(2n+3) - wybiera co drugi element, zaczynając od trzeciego,
  • :nth-child(-2n+3) - wybiera co drugi element ale wstecz (!), zaczynając od trzeciego,
  • :nth-child(4) - wybiera wyłącznie czwarty element.
Lektura uzupełniająca: W3Schools / CSS Pseudo-classes.