Transition


vamos a utilizar la funcion transition.
Con esta funcion le decimos que alla una trancision cuando se apliquen a alguna propiedad

transition-property: background;

Aqui le decimos que se aplique una trancision a la propiedad background.

transition-duration: 1s;

Aqui le decimos a la caja que va a ver una trancision de 1 segundo.

El cambio de color lo hacemos con hover asi:

.caja:hover{background-color: aqua;}

transition-delay

Con la propiedad transition delay hacemos que el se tarde en mostrar el transition ejemplo aqui 2 segundos
transition-delay: 2s;

transition-timing-function

Con la propiedad transition-timing-function:
Todas llegan al mismo tiempo la diferencia es que unas son mas rapidas que otras y las que estan apunto de llegar diminuyen su velocidad para llegar al 3 segundo.

linear
ease
ease-in
ease-out
ease-in-out