Come applicare uno stile css specifico a ogni elemento dispari (per argomento) in un insieme di elementi, tenendo conto di un insieme di elementi esclusi?Come applicare gli stili pari/dispari agli elementi tenendo conto delle classi escluse?
Il problema viene replicato qui (mostrato in una codepen):
http://codepen.io/houdmont/pen/VLOBBG
Una serie di elementi che hanno una classe .foo
applicato:
<a href="#" class="foo">1. Blue</a>
<a href="#" class="foo">2. Green</a>
<a href="#" class="foo">3. Blue</a>
<a href="#" class="foo bar">4. Hidden (blue)</a>
<a href="#" class="foo bar">5. Hidden (blue)</a>
<a href="#" class="foo bar">6. Hidden (blue)</a>
<a href="#" class="foo">7. Green</a>
Quando viene applicata la classe .bar
, l'elemento è nascosto.
Mi piacerebbe che lo rimanente elementi con .foo
applicato per essere stile pari/dispari.
tentativo come segue:
.bar {
display: none;
}
/**
* This clearly doesn't work as I'd hoped it would.
*/
.foo:not(.bar):nth-of-type(even) {
color: green;
}
Idealmente, vorrei il settimo elemento per essere verde, anche se è un elemento "dispari", se fossi in grado di escludere gli elementi con class .bar
allora sarebbe il quarto elemento e quindi considerato "pari", impostando il colore su verde.
Ciò è possibile con i CSS?
Felice di accettare che come risposta, grazie. Ha anche scoperto che i selettori CSS4 affronteranno questo problema: http://www.smashingmagazine.com/2013/01/sneak-peek-future-selectors-level-4/#tree-structural-pseudo-classes-nth-match-nth -last-match – Houdmont
Se a una domanda è stata precedentemente data una risposta altrove, dovresti invece contrassegnare la domanda come duplicata. Ciò ti risparmia la fatica di dover copiare la risposta e ricollegarla. – BoltClock
Lo farò la prossima volta! (Non sono riuscito a trovare il pulsante flag in precedenza ...) – cjol