Conserver l'animation CSS dans son état final à la fin
P粉950128819
2023-08-20 18:36:55
<p>J'anime certains éléments définis sur <code>opacity: 0;</code> Une classe d'animation est appliquée à l'événement onClick, à l'aide d'images clés, qui modifie l'opacité de <code>0</code> à <code>1</code> (et quelques autres modifications). </p>
<p>Malheureusement, lorsque l'animation se termine, l'élément revient à un état <code>opacité : 0</code> (dans Firefox et Chrome). Mon instinct est que les éléments animés resteront dans leur état final, annulant leurs propriétés d'origine. N'est-ce pas vrai ? Si non, comment puis-je conserver l’élément dans son état final ? </p>
<p>Code (hors versions de préfixe) : </p>
<pre class="brush:php;toolbar:false;">@keyframes bulle {
0% { transformation:échelle(0,5); opacité:0,0 }
50 % { transformation : échelle (1,2); opacité : 0,5 ;
100 % { transformation : échelle (1.0); opacité : 1.0 ;
}</pré>
<p><br /></p>
Si vous utilisez plus de propriétés d'animation, vous pouvez utiliser shorthand :
Réglez-le comme ceci :
bubble
Nom de l'animation2s
Duréelinear
Fonction heure0.5s
Retard1
迭代次数(可以是 'infinite
')normal
directionforwards
mode de remplissage (réglé sur « en arrière » si vous souhaitez une compatibilité avec l'utilisation de la position finale comme état final [c'est pour prendre en charge les navigateurs avec les animations désactivées] {juste pour répondre au titre, pas à votre cas spécifique})Fonctions horaires disponibles :
Itinéraires disponibles :
Essayez d'ajouter
animation-fill-mode: forwards;
. Par exemple, vous pouvez utiliser des abréviations comme celle-ci :https://developer.mozilla.org/en-US/docs/Web/CSS/animation-fill-mode