J'ai quelque chose comme:
<div id="content>
<h1>Welcome to Motor City Deli!</h1>
<div style=" font-size: 1.2em; font-weight: bolder;">Sep 19, 2010</div>
<div > ... </div>
Quel est le sélecteur css pour le deuxième div (1er div dans le div "content") de sorte que je puisse définir la couleur de police de la date dans ce div?
css
css-selectors
GregH
la source
la source
Réponses:
La réponse la plus correcte à votre question est ...
Cela appliquera le CSS au premier div qui est un enfant direct de #content (qui peut ou non être le premier élément enfant de #content)
Une autre option:
la source
except
premier / dernier div?#content > div:not(:last-of-type) { /* css */ }
#content > div:not(:first-of-type):not(:last-of-type) { /* css */ }
Tu veux
la source
<div>
n'est pas le premier enfant (c'est<h1>
).div
serait le premier enfant.Si nous pouvons supposer que le H1 sera toujours là, alors
mais n'ayez pas peur de spécifier l'id de la div de contenu:
C'est à peu près aussi bon que vous pouvez obtenir des navigateurs multiples dès maintenant sans avoir recours à une bibliothèque JavaScript comme jQuery. L'utilisation de h1 + div garantit que seul le premier div après H1 obtient le style. Il existe des alternatives, mais elles reposent sur des sélecteurs CSS3 et ne fonctionneront donc pas sur la plupart des installations IE.
la source
La chose la plus proche de ce que vous recherchez est : la pseudo-classe du premier enfant ; Malheureusement, cela ne fonctionnera pas dans votre cas car vous avez un
<h1>
avant le<div>s
. Ce que je suggérerais, c'est que vous ajoutiez une classe à<div>
, comme<div class="first">
, puis que vous la styliez de cette façon, ou que vous utilisiez jQuery si vous ne pouvez vraiment pas ajouter de classe:$('#content > div:first')
la source
$('#content > div.first)