Detener una animación CSS3 en el último fotograma

Resuelto user531192 asked hace 14 años • 0 respuestas

Tengo una animación CSS3 de 4 partes que se reproduce al hacer clic, pero la última parte de la animación está destinada a eliminarla de la pantalla.

Sin embargo, siempre vuelve a su estado original una vez que ha jugado. Alguien sabe cómo puedo detenerlo en su último cuadro CSS (100%) , o cómo deshacerme de todo el div en el que se encuentra una vez que se ha reproducido.

@keyframes colorchange {
  0%   { transform: scale(1.0) rotate(0deg); }
  50%  { transform: rotate(340deg) translate(-300px,0px) }
  100% { transform: scale(0.5) rotate(5deg) translate(1140px,-137px); }
}
user531192 avatar Dec 05 '10 22:12 user531192
Aceptado

Estas buscando:

animation-fill-mode: forwards;

Más información sobre MDN y lista de compatibilidad de navegadores en canIuse .

methodofaction avatar Dec 06 '2010 03:12 methodofaction

Si desea agregar este comportamiento a una animationdefinición de propiedad abreviada, el orden de las subpropiedades es el siguiente

animation-name- por defecto none

animation-duration- por defecto 0s

animation-timing-function- por defecto ease

animation-delay- por defecto 0s

animation-iteration-count- por defecto 1

animation-direction- por defecto normal

animation-fill-mode- necesitas configurar esto en forwards

animation-play-state- por defecto running

Por lo tanto, en el caso más común, el resultado será algo como esto

animation: colorchange 1s ease 0s 1 normal forwards;

Vea la documentación de MDN aquí

davnicwil avatar Aug 21 '2017 09:08 davnicwil