2011-06-20 1 views
4

Comment alterner le style (couleur de fond avec jquery) pour div intérieur div id = « conteneur » alternativement (pair et impair) si je HTML comme çaComment alterner style (couleur de fond) pour div à l'intérieur div

<div id="container"> 
    <div></div> 
    <div></div> 
    <div></div> 
    <div></div> 
... 
</div> 

Je sais avec table comme

#tbl_users tr:nth-child(even) {background: #CCC;} 
#tbl_users tr:nth-child(odd) {background: #FFF;} 

mais comment div appliquer quelque chose comme ça?

Répondre

5

Avez-vous essayé:

div#container div:nth-child(even) {background: #CCC;} 
div#container div:nth-child(odd) {background: #FFF;} 

nième enfant doit travailler indépendamment de l'étiquette.

2

Cela fonctionne exactement de la même manière avec les divs. Avec la structure ci-dessus, vous pouvez obtenir le même effet:

#container div:nth-child(even) {background: #CCC;} 
#container div:nth-child(odd) {background: #FFF;} 
+0

l'esprit que cela ne fonctionne pas dans tous les navigateurs – pistacchio

+0

@pistacchio Corrigez vous, mais ne ni le CSS qu'il utilise habituellement pour les tables. – Niklas

+0

Pourquoi les gens se plaignent-ils toujours de certains sélecteurs/propriétés ayant un mauvais support de navigateur alors que, évidemment, beaucoup de gens, y compris le PO, s'en fichent? – BoltClock

0

en utilisant la même astuce:

#container div:nth-child(even) {background: #CCC;} 
#container div:nth-child(odd) {background: #FFF;} 
4
$('#container>div:odd').css("background-color", "#ff0000"); 
$('#container>div:even').css("background-color", "#00ff00"); 
+0

Belle solution pour IE7! – Richard

0
<div id="container"> 
    <div>A</div> 
    <div>B</div> 
    <div>C</div> 
    <div>D</div> 
</div> 

div#container div:nth-child(even) {background: #FF00CC;} 
div#container div:nth-child(odd) {background: #CC00FF;} 

S'il vous plaît essayer ce lien http://codebins.com/codes/home/4ldqpbz