Is het mogelijk om bij een a:hover een onderliggende tag een andere background te geven?

Voorbeeld: in de onderstaande html wil ik de background-image van de li-tag wijzigen bij een hover van de a-tag.

<ul>
<li><a href="...">Menu 1</a></li>
<li><a href="...">Menu 2</a></li>
</ul>

En in onderstaande html de background-image van de div-tag wijzigen bij een hover van de a-tag:

<div><a href="...">Link</a></div>

Alvast bedankt...
Dat zul je denk ik met javascript doen, ik denk niet dat a:hover een background accepteert;)
a:hover zelf accepteert wel een background, dat is geen probleem. Ik vroeg me enkel af of je de layout van een onderliggende tag kan aanpassen in css als er gehoverd wordt over a...
Zoek eens naar parent.
Daarmee kan je wel je child aanspreken, maar andersom niet.

ul li a spreekt dus de UL > LI > A aan.
Maar andersom kan het niet.
PARENT a bestaat niet, terwijl dat (theoretisch) de li zou kunnen aanspreken.

Een tag veranderen kan CSS sowieso niet, maar met een <li> kan je evenveel mee als een <div>.
Met een display: block; etc kan je heel veel. Ook een li kan je absoluut positioneren, floaten, alignen etc etc.
Ok, heb het gevonden, dat gaat inderdaad niet. li:hover a gaat, maar niet de li aanspreken als a gehoverd wordt...

Parent > Child
Parent ~ Child (first child)

Maar Child > Parent is niet mogelijk...

Toch bedankt om er even mee over na te denken...
Werkt dit niet?


li {
  background-color: #000;
}

li:hover {
  background-color: #fff;
}


Als je over de a gaat, ga je eigenlijk ook over de li. So, why not? :-P
werkt op alle nieuwste browsers, maar IE6 (nog altijd zeer veel gebruikt) ondersteund geen hover voor li-tags...
De vraag is hoe erg het is dat IE6 gebruikers dat niet te zien krijgen. Echt kritisch is het niet, dat ze geen veranderende background zien.
Nee, inderdaad, niet zo erg, ze moeten maar upgraden ;)

Maar was toch de moeite om hier eens te vragen...
Maar je kan er wel iets aan doen dat de :hover wel werkt in IE6. Zie hier.
Ja, maar niet met pure CSS, enkel met JavaScript...
En dan moet je nog met conditional comments werken zodat de JavaScript enkel in IE 6 en kleiner wordt uitgevoerd...

Reageren