CSS Elternelement ansprechen

lordg2009

Lt. Commander
Registriert
Apr. 2009
Beiträge
1.559
Hi

Kann ich in CSS per Selektor auch das Elternelemen eines bestimmten Elementes ansprechen?

Ein kleines Beispiel:
HTML:
<div id="outer">
    <img src="großes bild">
    <div id="inner">
        <img src="kleine Lupe">
    </div>
</div>

HTML:
div#outer div#inner:hover {
    transform: scale(2,2);
}

Beim fahren mit der Maus, über diese kleine Lupe, rechts unten, Soll der Block mit dem großen Bild vergrößert werden, und nicht die kleine Lupe, wie in meinem Beispiel.

Gibt es dafür eine CSS-Möglichkeit (ohne auf JavaScript ausweichen zu müssen)?

Viele Dank für eure Hilfe
 
Guck dir mal hier das Beispiel #8 an: http://www.thestyleworks.de/tut-art/css-sitemap.shtml

Geht aber nicht in allen Browsern (kA wie aktuell der Text ist):
Der Screenshot 4 zeigt, wie es aussehen sollte. Fährt man mit der Maus über den Text eines Unterkapitels, dann ändert sich nicht nur das dazugehörige Image, sondern auch die Grafiken der übergeordneten Kapitel. Dieses Beispiel wird bis jetzt nur durch Opera 7+ korrekt und vollständig dargestellt. Firefox 2.0 und IE 7 zeigen noch die generierten Inhalte, aber nicht mehr deren hover-Status an, während IE/Win 6 gar nichts ausgibt.
 
lordg2009 schrieb:
Kann ich in CSS per Selektor auch das Elternelemen eines bestimmten Elementes ansprechen?
Ganz einfach: Nein. Definitives nein.
Der Grund liegt in der Performance. Wir reden hier von rückwärts-gerichtetem DOM-Durchlauf, das ist die totale Handbremse.
Also: kein "li:parent" oder "ul < li".

Entweder nimmst du JavaScript, oder aber, und das ist sinniger, du löst das Problem über eine entsprechende DOM-Struktur. Denk z.B. daran, dass einige (aber nicht alle) Browser "pointer-events:none" unterstützen.
 
Zurück
Oben