CSS3-Übergänge funktionieren nicht mit der Anzeigeeigenschaft
In CSS spielt die Anzeigeeigenschaft eine entscheidende Rolle bei der Definition, ob ein Element sichtbar oder ausgeblendet ist . Übergänge hingegen ermöglichen sanfte visuelle Veränderungen im Laufe der Zeit. Der Versuch, Übergänge auf Elemente anzuwenden, deren Anzeige auf „Keine“ eingestellt ist, kann jedoch zu unerwartetem Verhalten führen.
Lösung des Problems
Das Problem ergibt sich aus der Art der Anzeige Eigentum. Wenn die Anzeige eines Elements auf „Keine“ gesetzt ist, wird es von der Seite entfernt, als ob es nie dort gewesen wäre. Daher kann es nicht teilweise angezeigt werden oder Übergänge durchlaufen.
Alternative Lösung: Verwendung von Deckkraft
Um den gewünschten Fading-Effekt beim Schweben zu erzielen, sollten Sie stattdessen die Deckkrafteigenschaft verwenden . Die Deckkraft steuert die Transparenz eines Elements und ermöglicht dessen allmähliches Erscheinen oder Verschwinden.
CSS-Lösung
Implementieren Sie die folgenden CSS-Anpassungen, um den Fading-Effekt zu aktivieren:
#header #button:hover > .content { opacity: 1; height: 150px; padding: 8px; } #header #button .content { opacity: 0; height: 0; padding: 0 8px; overflow: hidden; transition: all .3s ease .15s; }
Durch die Kombination von Deckkraft und Übergang wird der verborgene Inhalt eingeblendet, wenn Sie mit der Maus über die Schaltfläche fahren. Herstellerpräfixe für browserübergreifende Kompatibilität wurden der Kürze halber weggelassen.
Andere Überlegungen
Neben der Deckkraft könnte man auch die Anpassung der Höhe und der Fülleigenschaften in Betracht ziehen, um ähnliches zu erreichen Effekte.
Zusätzlich Ressourcen
Das obige ist der detaillierte Inhalt vonWarum funktionieren CSS3-Übergänge nicht, wenn die Anzeige auf „Keine' eingestellt ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!