Kaskada i specyficzność CSS
Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
Kaskada CSS określa, która deklaracja stylu zostanie zastosowana, gdy kilka reguł dotyczy tego samego elementu i tej samej właściwości. Przeglądarka bierze pod uwagę m.in. źródło stylu, specyficzność selektora oraz kolejność zapisania reguł.
Specyficzność selektorów
Specyficzność oznacza „siłę” selektora. Im bardziej szczegółowy selektor, tym większy priorytet ma jego deklaracja.
Przykładowa kolejność od słabszych do silniejszych:
- selektor elementu, np.
td - selektor klasy, np.
.komorka - selektor identyfikatora, np.
#wynik - styl wpisany bezpośrednio w atrybucie
style
Przykład
<style>
td {
padding: 30px;
}
</style>
<td style="padding: 10px;">Anna</td>
<td>Ewa</td>
W tym przykładzie reguła td { padding: 30px; } dotyczy wszystkich komórek td. Jednak pierwsza komórka ma dodatkowo styl lokalny:
style="padding: 10px;"
Styl zapisany w atrybucie style ma wyższy priorytet niż zwykła reguła CSS z selektorem elementu. Dlatego:
- komórka
Annabędzie miałapadding: 10px, - komórka
Ewabędzie miałapadding: 30px.
Ważne na egzaminie
Jeżeli w zadaniu występuje jednocześnie reguła w znaczniku <style> i styl lokalny w atrybucie style, to zwykle styl lokalny wygrywa. Wyjątkiem mogą być deklaracje z !important, ale tylko wtedy, gdy pojawiają się w kodzie.