C'è un modo per modificare il css per una classe quando si passa il mouse su un elemento di un'altra classe usando solo css?Usa: passa il mouse per modificare il css di un'altra classe?
Qualcosa di simile:
.item:hover .wrapper { /*some css*/ }
Solo 'involucro' non è dentro 'voce', è da qualche altra parte.
Io davvero non voglio usare javascript per qualcosa di così semplice, ma se devo, come lo farei? Ecco il mio tentativo fallito:
document.getElementsByClassName('item')[0].onmouseover="document.getElementsByClassName('wrapper')[0].style.background="url('some url')";";
C'è solo un elemento di ogni classe. Non so perché non hanno usato gli ID quando hanno creato il modello, ma è proprio così e non posso cambiarlo.
[Edit]
E 'un menu. Ogni elemento del menu ha una classe distinta. Quando si passa con il mouse sull'elemento, viene visualizzato un sottomenu a destra. È come una sovrapposizione, quando uso lo strumento "Ispeziona elemento", posso vedere che l'intero sito Web html cambia quando il sottomenu è attivo (il che significa che non c'è altro che il sottomenu). La classe che chiamo 'wrapper' ha il css che controlla lo sfondo per il sottomenu. Non c'è davvero alcuna connessione che io possa vedere tra le due classi.
Non volete usare 'getElementsByClassName' dal momento che non è supportato da tutti i browser. – Amberlamps
No. Il CSS non consente agli elementi non nidificati di influenzarsi a vicenda. Dovrai usare Javascript per questo. –
_ "altrove" _: esattamente dove? se '.item' fosse un fratello precedente che potresti fare' .item: hover ~ .wrapper {...} ' – fcalderan