Jak działają różne priorytety stylów w CSS?
sobes.tech AI
Odpowiedź od AI
W CSS priorytety stylów są określane za pomocą mechanizmu kaskadowania i specyficzności selektorów. Podstawowe zasady to:
-
Specyficzność — to waga selektora, obliczana na podstawie liczby ID, klas, tagów i innych składników. Im wyższa specyficzność, tym priorytetniejszy styl.
- Selektor ID (
#id) ma wysoką priorytet. - Klasy (
.klasa), atrybuty i pseudoklasy mają średni priorytet. - Tagi (
div,p) mają niski priorytet.
- Selektor ID (
-
Kaskadowanie — jeśli dwa reguły mają tę samą specyficzność, stosuje się ta, która jest zadeklarowana później w kodzie.
-
!important — dodaje maksymalny priorytet do stylu, nadpisując inne reguły, z wyjątkiem innych
!importanto wyższej specyficzności. -
Dziedziczenie — niektóre właściwości (np.
color,font-family) są dziedziczone od rodzica, jeśli nie są nadpisane.
Przykład:
#header { color: red; } /* specyficzność 100 */
.menu { color: blue; } /* specyficzność 10 */
div { color: green; } /* specyficzność 1 */
/* Jeśli element ma id="header" i klasę="menu", kolor będzie czerwony */
W ten sposób przeglądarka wybiera styl o najwyższej specyficzności, uwzględniając kolejność i obecność !important.