Junior
Kako funkcionišu različiti prioriteti stilova u CSS?
sobes.tech АИ
Одговор од АИ
U CSS-u, prioritet stilova određuje se pomoću mehanizma kaskadiranja i specifičnosti selektora. Osnovni principi su:
-
Specifičnost — to je težina selektora, koja se računa na osnovu broja ID-ova, klasa, tagova i drugih komponenti. Što je veća specifičnost, to je stil prioritetniji.
- ID selektor (
#id) ima visok prioritet. - Klase (
.klasa), atributi i pseudoklase imaju srednji prioritet. - Tagovi (
div,p) imaju nizak prioritet.
- ID selektor (
-
Kaskadiranje — ako dva pravila imaju istu specifičnost, primenjuje se ono koje je deklarisano kasnije u kodu.
-
!important — dodaje maksimalni prioritet stilu, prepisujući druga pravila, osim drugih
!importantsa višom specifičnošću. -
Nasleđivanje — neke osobine (
color,font-family) se nasleđuju od roditelja ako nisu prepisane.
Primer:
#header { color: red; } /* specifičnost 100 */
.menu { color: blue; } /* specifičnost 10 */
div { color: green; } /* specifičnost 1 */
/* Ako element ima id="header" i klasu="menu", boja će biti crvena */
Na ovaj način, pregledač bira stil sa najvišom specifičnošću, uzimajući u obzir redosled i prisustvo !important.