animation: define o nome da animação, a duração, a função de tempo e se ela é repetitiva ou não. Exemplo:Copy code
/* Cria uma animação chamada "slide-in" que dura 2 segundos, usa a função de tempo "ease-out" e não se repete */
.elemento {
animation: slide-in 2s ease-out;
}
@keyframes: define as etapas da animação. É preciso especificar um nome para as keyframes e indicar quais propriedades devem ser alteradas e em que momento. Exemplo:Copy code
@keyframes slide-in {
0% {
transform: translateX(-100%);
}
100% {
transform: translateX(0);
}
}
animation-iteration-count: define quantas vezes a animação deve se repetir. O valor padrão é 1, mas você pode usar valores como "infinite" para animações contínuas.animation-direction: define se a animação deve seguir o sentido normal ou inverso. O valor padrão é "normal", mas você pode usar "reverse" para animações inversas.animation-fill-mode: define como o elemento deve ficar quando a animação termina. O valor padrão é "none", mas você pode usar "forwards" para manter o estado final da animação.animation-timing-function: define a função de tempo da animação. Existem várias opções pré-definidas, como "ease", "linear" e "ease-in-out".Exemplo de como ficaria o código completo para uma animação de "slide-in" :
Copy code
/* Cria uma animação chamada "slide-in" */
@keyframes slide-in {
0% {
transform: translateX(-100%);
}
100% {
transform: translateX(0);
}
}
/* Aplica a animação ao elemento */
.elemento {
animation: slide-in 2s ease-out;
animation-fill-mode: forwards;
animation-iteration-count: 1;
}
É importante lembrar que além dessas propriedades existem outras e algumas já são suportadas pelos navegadores modernos, é importante se preocupar com a compatibilidade com navegadores mais antigos ou utilizar ferramentas para