¿De qué sirve usar esta sintaxis?
div.card > div.name
¿Cuál es la diferencia entre esto?
div.card div.name
css
css-selectors
Randy Mayer
fuente
fuente

Respuestas:
A > Bsolo seleccionará B que son hijos directos a A (es decir, no hay otros elementos intermedios).A Bseleccionará cualquier B que esté dentro de A, incluso si hay otros elementos entre ellos.fuente
>es el selector hijo Especifica solo elementos secundarios inmediatos y no ningún descendiente (incluidos nietos, bisnietos, etc.) como en el segundo ejemplo sin>.El selector secundario no es compatible con IE 6 y versiones inferiores. Una gran tabla de compatibilidad está aquí .
fuente
div.card > div.namecoincide<div class='card'>....<div class='name'>xxx</div>...</div>pero no coincide<div class='card'>....<div class='foo'> ... <div class='name'>xxx</div>..</div>....</div>div.card div.namecoincide con ambos.Es decir, el
>selector se asegura de que el elemento seleccionado en el lado derecho del elemento>sea un elemento secundario inmediato del elemento en su lado izquierdo.La sintaxis sin las
>coincidencias<div class='name'>que sea descendiente (no solo secundaria) de<div class='card'>.fuente
A> B selecciona B si es un hijo directo de A, mientras que AB selecciona B si es un hijo directo de B o no.
fuente
> vs espacio
Considere los dos escenarios
div > span { }vs.div span { }Aquí, el
<space>selecciona todos los<span>elementos del<div>elemento, incluso si están dentro de otro elemento. El> selecciona todos los<div>elementos secundarios del elemento pero si están dentro de otro elemento.> (Mayor que):
Este solo selecciona
<span>World!</span>y no buscará la etiqueta<span>interna<p>.Espacio
Éste selecciona todas las etiquetas span, incluso si están anidadas dentro de otra etiqueta.
fuente