Estou realmente confuso se devemos ou não usar o &
seletor de aninhamento na seguinte situação
.my-class {
& > a {
color: yellow;
}
}
Contra
.my-class {
> a {
color: yellow;
}
}
De acordo com Kevin Powell, o seletor de aninhamento é necessário quando direcionamos elementos: https://www.youtube.com/watch?v=ljDIcBp-9sQ
Mas o segundo exemplo também funciona muito bem, além de fazer muito mais sentido porque é mais limpo e nos acostumamos com ele a partir do SASS.
O
&
seletor no aninhamento CSS se refere explicitamente ao seletor pai, garantindo clareza, especialmente em estilos complexos:Isso compila para
.my-class > a
.Omitir
&
também funciona porque o Módulo de Aninhamento CSS permite seletores filhos diretos (apenas para sintaxe simples, não para complexa):Isso também compila para
.my-class > a
.Ambos são válidos. Use
&
para explicitude em contextos complexos (por exemplo, modificadores ou pseudoclasses). Omita para seletores filhos diretos mais limpos e simples.