Ce face Combinatori CSS (descendent, copil >, frate +, ~)
Combinatorii CSS leagă doi selectori simpli pe baza poziției lor în arborele HTML.
• Spațiul (descendent): vizează elementul dacă se află oriunde în interiorul primului, indiferent de nivelul de adâncime.
• Semnul > (copil direct): vizează doar elementele aflate direct pe primul nivel de adâncime în interiorul părintelui.
• Semnul + (frate adiacent): vizează elementul plasat imediat după primul, la același nivel.
• Semnul ~ (frate general): vizează toate elementele plasate după primul la același nivel.
Valori uzuale
| Valoare | Descriere |
|---|---|
A B |
Selectează orice B aflat în interiorul lui A (descendent). |
A > B |
Selectează doar B dacă este copil direct al lui A. |
A + B |
Selectează primul B plasat imediat după A la același nivel. |
A ~ B |
Selectează orice B care urmează după A la același nivel. |
Exemple
Exemplul 1: Stilizarea primului paragraf de după un titlu
Combinatorul + permite evidențierea paragrafului introductiv fără a adăuga o clasă manuală în HTML.
/* Doar paragraful care vine imediat după un h2 */
h2 + p {
font-size: 1.2rem;
color: #475569;
}
/* Doar linkurile din interiorul meniului */
nav > a {
margin-right: 15px;
text-decoration: none;
}
Efect vizual în browser
Primul paragraf de după titlu apare cu font mai mare (stil lead), iar linkurile din meniu sunt distanțate și fără subliniere.
Greșeli frecvente
- Confundarea combinatorului descendent (spațiu) cu selectorul multiplu cu virgulă: h1, p aplică stilul la ambele, în timp ce h1 p caută un paragraf aflat în interiorul unui h1.
Comenzi înrudite
Selectori de bază (element, clasă, id): Mecanismul prin care CSS identifică elementele din HTML cărora le aplică stilurile.Pseudo-clase (:hover, :focus, :active, :nth-child): Stilizează un element în funcție de starea sa (interacțiune cu mouse-ul, tastatura) sau poziția structurală în listă.