Planos a partir de R$ 39/mês Inscreva-se Agora

Animation Timing Function

animation-timing

E com o animation-duration que você define em quanto tempo a animação irá ocorrer, mas é com o animation-timing-function que você consegue dar vida e deixar mais orgânica (parecida com o mundo real) essa animação.

See the Pen animation-timing-function by André | Origamid (@origamid) on CodePen.

Essa propriedade é responsável por controlar a velocidade em que a animação irá ocorrer, no espaço de tempo definido pelo duration. Se você animar um carro acelerando, por exemplo, ele sempre irá começar devagar e aumentar a sua velocidade com o tempo.

Para influenciarmos na velocidade, a propriedade possui algumas palavras-chave já com velocidades mais comuns pré-definidas. São elas:

Veja o exemplo abaixo de cada uma delas funcionando:

See the Pen Animation Timing Function – Keywords by André | Origamid (@origamid) on CodePen.

Porém o valor mais interessante é o cubic-bezier, com ele você consegue ter controle total sobre a curva de Bézier que é responsável por controlar a velocidade da animação.

Aqui você consegue ver mais sobre a curva e manipular os seus pontos para testar: http://cubic-bezier.com/ Esse é um projeto da Lea Verou

No primeiro exemplo dessa postagem eu usei cubic-bezier(.3,1,.3,1.3), o fato do último valor ser acima de 1 (no caso, 1.3), faz com que a animação passe um pouco do ponto final e depois retorne. Como uma bola quicando que amassa e depois retorna ao seu formato original. Isso deixa a animação mais orgânica, pois imita o mundo real.

See the Pen animation-timing-function-teste by André | Origamid (@origamid) on CodePen.

Acima temos um exemplo utilizando diferentes timing. Você pode observar que a cubic-bezier cria uma animação mais satisfatória do que as demais.

Stopwatch by Icon Fair from the Noun Project

Todas as postagens sobre animações com CSS:

Mais Dicas

Design

Dica #05 Tipografia – Serifadas

Código

Como utilizar Media Queries para sites Responsivos

Código

DICA #03 CSS – Hexadecimal

Design

Padding é a Revolução do Layout na Web

Design

Dica #04 Tipografia – Defina Uma Escala