Las animaciones de fotogramas clave de CSS abren una amplia gama de posibilidades para lo que se puede lograr con CSS. Mucho más que simples transiciones de un paso, los fotogramas clave se pueden usar para lograr animaciones complejas de varios pasos que son bastante impresionantes.
En el proyecto de hoy, comenzaremos de cero y construiremos una pila de dos fotos que se expandirán e intercambiarán su orden de apilamiento cuando se desplace sobre ellas. ¡En el camino aprenderemos todo sobre cómo manejar fotogramas clave como un profesional y hacer malabarismos con todos esos prefijos de cabeza giratoria!
Lo que estamos construyendo
El concepto para este proyecto es bastante simple. Imagina dos fotos, rotadas al azar y apiladas una sobre otra como si las hubieras tirado en un escritorio. El problema es que solo puedes ver la foto en la parte superior.
Para ayudar a esa foto inferior a obtener la atención que merece, vamos a crear un evento flotante que primero separa las dos fotos, luego desliza la foto superior detrás de la foto inferior, cambiando efectivamente el orden de apilamiento.
Las probabilidades son que, si lees este blog, eres un pensador visual, así que esto es lo que se ve en las fotos:
Animaciones de fotogramas clave frente a transiciones
Actualmente, CSS tiene dos opciones principales para animar un elemento: transiciones y fotogramas clave. Cada vez que desee animar algo, debe analizar la situación y decidir qué método es el adecuado. Afortunadamente, decidir entre los dos es muy fácil.
Siempre que tenga una animación simple con un solo paso, una transición es la solución perfecta. Por ejemplo, si quieres que algo gire ligeramente cuando pasas el ratón sobre él, probablemente lograrás el efecto con una transición. Simplemente establece el estado original, luego el estado girado y la transición entre los dos.
Ahora, imagine que desea profundizar más en esta idea y crear un dial animado como el que vería para abrir una caja fuerte. Probablemente querrás que gire en el sentido de las agujas del reloj por un segundo, luego en sentido contrario a las agujas del reloj, y tal vez nuevamente en el sentido de las agujas del reloj, entiendes la idea. Para este escenario, definitivamente querrás ir con una animación de fotogramas clave.
¿Qué debemos usar?
Arriba, describimos la animación que queremos lograr. Obviamente, va a ser bastante complejo. Varios elementos se moverán de un lado a otro, girando e intercambiando su orden de apilamiento. Dada esta complejidad, las animaciones de fotogramas clave son la elección natural.
Soporte del navegador
¿Es bueno tener en cuenta que tanto los fotogramas clave como las transiciones ahora tienen un soporte bastante decente en los principales navegadores? excepto por supuesto para IE. Por lo que sé, no se admitirán transiciones ni animaciones hasta IE10, por lo que obviamente no querrá confiar en ellas para ninguna funcionalidad importante.
Fuente: CanIUse.com
Paso 1. El HTML
Basta de construir, vamos a la construcción de este lechón. Lo primero que debe hacer es diseñar el proyecto en HTML. Esto es, por supuesto, extremadamente fácil. Todo lo que necesitamos es un contenedor con dos imágenes.