mi sono chiesto se c'è una soluzione migliore rispetto a quello che ho trovato senza cambiare l'html-struttura diSelezionare la seguente ennesima sibling
La struttura HTML simile a questo
<div class="wrap">
<div class="divider"></div>
<div class="block"></div>
<div class="block"></div>
<div class="divider"></div>
</div>
Quindi c'è varie DIV sulla allo stesso livello, quello che voglio fare è colorare ogni quarto blocco in modo diverso, fino a quando appare un divisore, quindi dovrebbe ricominciare.
Ho pensato che qualcosa come .block:nth-child(4n)
avrebbe fatto il trucco, ma in realtà conta gli elementi in base al genitore, non in base alla classe.
Ecco il JSFiddle da provare. Block # 4 e # 8 in ogni riga devono essere diversamente colorati http://jsfiddle.net/SKgdH/3/
E questo è come ho fatto sorta-di lavoro: http://jsfiddle.net/SKgdH/1/
Quello che ho fatto è stato quello di cercare il quarto fratello del .divider come questo .divider + .block + .block + .block + .block
Funziona, tuttavia, dovrei scrivere lo stesso per l'8, 12, 16, ... blocco, che non lo rende più automatico.
C'è qualcosa come .divider + .block:nth-sibling(4)
o .divider + .block:nth-of-class(4)
?
Forse uno di voi ha un'idea su come risolvere questo problema senza modificare il codice sorgente o utilizzare javascript.
davvero non voglia di rispondere: http://nthmaster.com/ il selettore che stai cercando è : nth-of-type() modo div.block: nth-of-type (2) sarebbe selezionare il 2 ° div con il blocco di classe e NON la prima div con class = bloccare #goodluck #ytjukutja –
scuse per il post precedente, una mancanza di comprensione. Ho fatto un altro tentativo una volta che ho capito pienamente la Q ma sembra che @BoltClock abbia ragione, js sembra essere la tua unica opzione –