Por ejemplo:
div > p.some_class {
/* Some declarations */
}
¿Qué significa exactamente el >
signo?
Por ejemplo:
div > p.some_class {
/* Some declarations */
}
¿Qué significa exactamente el >
signo?
Respuestas:
>
es el combinador secundario , a veces erróneamente llamado combinador descendiente directo. 1
Eso significa que el selector div > p.some_class
solo selecciona los párrafos .some_class
que están anidados directamente dentro de a div
, y no los párrafos que están anidados más adentro.
Una ilustración:
<div>
<p class="some_class">Some text here</p> <!-- Selected [1] -->
<blockquote>
<p class="some_class">More text here</p> <!-- Not selected [2] -->
</blockquote>
</div>
Qué se selecciona y qué no:
Seleccionado
Esto p.some_class
se encuentra directamente dentro de div
, por lo tanto, se establece una relación padre-hijo entre ambos elementos.
No seleccionado
Esto p.some_class
está contenido por un blockquote
dentro del div
, en lugar del div
sí mismo. Aunque este p.some_class
es un descendiente de la div
, no es un niño; Es un nieto.
En consecuencia, si bien div > p.some_class
no coincidirá con este elemento, lo div p.some_class
hará, utilizando el combinador descendente en su lugar.
1 Muchas personas van más allá y lo llaman "hijo directo" o "hijo inmediato", pero eso es completamente innecesario (e increíblemente molesto para mí), porque un elemento hijo es inmediato por definición de todos modos, por lo que significan exactamente lo mismo. No existe tal cosa como un "niño indirecto".
>
(signo mayor que) es un combinador de CSS.
Un combinador es algo que explica la relación entre los selectores.
Un selector CSS puede contener más de un selector simple. Entre los selectores simples, podemos incluir un combinador.
Hay cuatro combinadores diferentes en CSS3:
Nota: <
no es válido en selectores CSS.
Por ejemplo:
<!DOCTYPE html>
<html>
<head>
<style>
div > p {
background-color: yellow;
}
</style>
</head>
<body>
<div>
<p>Paragraph 1 in the div.</p>
<p>Paragraph 2 in the div.</p>
<span><p>Paragraph 3 in the div.</p></span> <!-- not Child but Descendant -->
</div>
<p>Paragraph 4. Not in a div.</p>
<p>Paragraph 5. Not in a div.</p>
</body>
</html>
Salida:
.entry-content > * {"code" }
que sigue .entry-content {"other code" }
? ¿No .entry-content > *
cubre a todos los hijos de entry-content
?
Como otros mencionan, es un selector de niños. Aquí está el enlace apropiado.
<div>
<p class="some_class">lohrem text (it will be of red color )</p>
<div>
<p class="some_class">lohrem text (it will NOT be of red color)</p>
</div>
<p class="some_class">lohrem text (it will be of red color )</p>
</div>
css
div > p.some_class{
color:red;
}
Todos los niños directos que están <p>
con .some_class
ellos se les aplicaría el estilo.
(selector de niños) se introdujo en css2. div p {} selecciona todos los elementos p difuntos de los elementos div, mientras que div> p selecciona solo elementos p hijos, no nietos, bisnietos, etc.
<style>
div p{ color:red } /* match both p*/
div > p{ color:blue } /* match only first p*/
</style>
<div>
<p>para tag, child and decedent of p.</p>
<ul>
<li>
<p>para inside list. </p>
</li>
</ul>
</div>
Para obtener más información sobre CSS Ce [lectores y su uso, consulte mi blog, selectores css y selectores css3
El selector de signo mayor (>) en CSS significa que el selector de la derecha es un descendiente / hijo directo de lo que esté a la izquierda.
Un ejemplo:
article > p { }
Significa solo diseñar un párrafo que viene después de un artículo.
#something a
que sería un selector de niños.