CSS nos permite poder crear animaciones con el objeto de poder darle algun tipo de movimiento a los elementos dentro de la página web. Para eso debemos utilizar una serie de propiedades que acá vamos a ver:
Lo primero que debemos hacer es declarar desde donde va a arrancar nuestra animación, es decir desde que punto del elemento. Para eso se utiliza la propiedad transform-origin. Esta indica desde que punto la transición va a ocurrir. Acepta diferentes tipos de valores:
ATENTI
Es posible combinar keywords con valores de offset.
Algunos ejemplos visuales
Queremos que el eje del movimiento sea en la parte superior izquierda del elemento
transform-origin:top left;
Como vemos, el movimiento comienza desde el punto que le pasamos en transform-origin
Queremos ahora que el elemento comience a moverse a 40px del eje x y a 100px del eje y
transform-origin:40px 100px;
Como se señala en la imagen, el movimiento empieza desde ese punto.
Los tipos de animación se realizan con transform. Podes fijarte mas informacion sobre esta propiedad en la pagina correspondiente o poder chequearlo acá https://developer.mozilla.org/en-US/docs/Web/CSS/transform
Ya tenemos desde donde comenzará la animación y que tipo de animación será. Es hora de ponernos a hacer la animacion propiamente dicha. Para eso utilizamos el evento keyframes que define como se moverá la animación desde el punto 0 al punto final. Su sintaxis es similar a esta: