28172 sujets

CSS et mise en forme, CSS3

Bonsoir !

Je ne comprends pas la différence entre les sélecteurs. Il font tous les deux la même chose non ?!

div p {
	color: #000;
}
div>p {
	color: #FF0000;
}

J'accompagne ma question d'un code HTML :

<div>
	<p>Texte 1</p>
	<p>Texte 2</p>
</div>


Quelqu'un peut m'expliquer la différence et les bonnes pratiques d'utilisation ? Merci d'avance.
Modifié par SilverFox (02 Apr 2015 - 21:34)
Modérateur
Coucou Smiley smile

Le selecteur > ne marche que pour les enfants directs.
Ci-dessous les deux fonctionnent :
<div>
	<p>Texte 1</p>
	<p>Texte 2</p>
</div>


Alors que ci-dessous seul div p fonctionne car les <p> ne sont pas directement fils de section
<div>
	<section>
		<p>Texte 1</p>
		<p>Texte 2</p>
	</section>
</div>

w3schools a écrit :
Note: Elements that are not directly a child of the specified parent, are not selected.

http://www.w3schools.com/cssref/sel_element_gt.asp
Modifié par _laurent (02 Apr 2015 - 21:37)
D'accord ! J'ai compris.

section>p {
    color: red; // Ne s'applique qu'aux <p> étant des enfants directs de <section>
}

section p {
    color: red; // S'applique à tous les <p> étant des enfants directs ou indirects de <section>
}


Merci beaucoup !