Wie kann ich die Verzögerung einen :hover-Effekt in CSS?
Gibt es eine Möglichkeit die Verzögerung der :Hover-event ohne JavaScript zu verwenden? Ich weiß, es ist ein Weg, um die Verzögerung Animationen, aber ich habe nicht gesehen, was auf die Verzögerung der :hover-event.
Ich Baue ein son-of-suckerfish wie Menü. Ich möchte simulieren, wie hoverIntent nicht ohne Zugabe die zusätzliche JS Gewicht. Ich würde es vorziehen, behandeln Sie dies als eine progressive enhancement und nicht JS eine Anforderung für die Verwendung des Menüs.
Beispiel Menü markup:
<div>
<div>
<ul>
<li><a href="#">
<ul>
<li></li>
<li></li>
</ul>
</li>
<li>
<li>
</ul>
</div>
</div>
Hier ist die vollständige demo: http://jsfiddle.net/aEgV3/
- Interessante Frage, aber ich denke, 'Nein, nicht ohne JavaScript' dürfte die Antwort sein, leider.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie übergänge zu verzögern, die
:hover
Effekt, den Sie wollen, wenn der Effekt ist CSS-basiert.Beispielsweise
dies führt zu einer Verzögerung der Anwendung der die hover-Effekte (
background-color
in diesem Fall) für eine Sekunde.Demo-Verzögerung auf beiden schweben auf und ab:
CSS:
HTML:
Demo Verzug nur auf hover auf:
CSS:
HTML:
Herstellerspezifische Erweiterungen für Übergänge und W3C CSS3 transitions
display
Eigenschaft nicht, aber wenn Sie es vom Bildschirm, dann ja.Diese fügen eine transition delay, das gilt für fast jeden browser..
Für eine ästhetische Erscheinung 🙂 kann sein:
position für
.sNv2 .nav UL
kann ersetzt werden durchz-index:-1
undz-index:1
für.sNv2 .nav LI:Hover UL