Gibt es eine Möglichkeit, das Gegenteil von der :hover
Verwendung von nur CSS zu tun ? Wie in: Wenn :hover
ja on Mouse Enter
, gibt es ein CSS-Äquivalent zu on Mouse Leave
?
Beispiel:
Ich habe ein HTML-Menü mit Listenelementen. Wenn ich mit der Maus über eines der Elemente schwebe, wird eine CSS-Farbanimation von #999
bis angezeigt black
. Wie kann ich den gegenteiligen Effekt erzielen, wenn die Maus den Elementbereich mit einer Animation von black
bis verlässt #999
?
(Denken Sie daran, dass ich nicht nur dieses Beispiel beantworten möchte, sondern das gesamte "Gegenteil von :hover
".)
:hover
ist ganz einfach :not(:hover)
; jedoch :hover
ist nicht gleichbedeutend mit onmouseenter
noch ist :not(:hover)
das gleiche wie onmouseleave
. CSS hat kein Konzept für DOM-Ereignisse.
:hover
bedeutet einfach "ein Element, über dem sich ein Mauszeiger befindet". Es wird nicht angezeigt, ob der Mauszeiger von einem anderen Element zu diesem Element übergegangen ist. Es bedeutet nur, dass sich der Mauszeiger derzeit auf dem Element befindet.
:not(:hover)
gilt dies. Hier ist eine Demo: jsfiddle.net/BoltClock/rghBX