2011-08-21 15 views
9

C'è una soluzione crossbrowser a una linea molto migliore per cambiare il colore del testo dei bambini tramite css?
bisogno di fare tutto rosso il testo al passaggio del mouse div

html:
Soluzione migliore per cambiare il colore dei bambini su hover genitore

<div><span class="gray">I'm a lion!</span><span>Arrrrr!!!</span></div> 


css:

div {color:black}; 
.gray {color:gray;} 
div:hover {color:red;} 


ho pensato solo che questa

div:hover, div:hover .gray {color:red;} 

risposta

18

il proprio ...

div:hover, div:hover .gray {color:red;}

... è buono una soluzione come qualsiasi, in realtà. Se vuoi abbinare anche altre classi/elementi puoi usare una stella;

div:hover, div:hover * { color:red; } 

demo http://jsfiddle.net/h5BaU/

+0

sì, è buon modo, XEC, ma simliest?/il mio voto – Shara

+2

Questo è piuttosto semplice. Sì, direi che è la soluzione più semplice. Non è possibile associare sia un elemento che i suoi figli nella stessa selezione (ad esempio 'div: hover && *') così 'div: hover, div: hover *' è sia semantico che semplice. Dai l'accettazione all'uomo! –

Problemi correlati