Vidéo: Les bases de l'animation avec images clés dans FilmoraPro | Cours 1 2025
Pour créer des effets animés sur votre site Web pour les afficher sur l'iPad et l'iPhone, vous devez utiliser des images clés. Les animations CSS 3 plus complexes reposent sur des images clés. Les images clés sont les points d'une animation où quelque chose change. Chaque fois que vous voulez changer un objet animé, vous devez créer une nouvelle image clé.
Par exemple, si vous voulez animer un rebond de balle, comme indiqué sur cette figure, vous devez avoir une image clé en haut du rebond et une autre en bas du rebond.
Dans cet exemple, la boule a 50 pixels de diamètre et le conteneur pour la balle mesure 350 pixels. La première image clé place donc la boule au fond du conteneur et la dernière le place au sommet du conteneur.
Voici le code qui rend ce travail:
@ - webkit-keyframes bounce {de {margin: 300px auto 0;} à {margin: 0 auto 0;}}
An Le bloc @ -webkit-keyframes contient des règles qui définissent chaque image clé. Une image clé définit le style de ce moment dans l'animation. Vous pouvez avoir un début et une fin comme dans l'exemple illustré ici, ou vous pouvez définir n'importe quel nombre de points intermédiaires. Certains navigateurs Web appliquent ce style plus facilement que d'autres, mais Safari sur iPhone et iPad rend ce travail assez bien.
Dans cet exemple de balle rebondissante simple, une animation appelée rebond est définie pour avoir deux images-clés: une pour le début de l'animation (le bloc de départ) et une pour la fin (le bloc). Ces deux images clés déplacent la balle de au bas à le haut.
Lorsque vous définissez une animation avec un ensemble d'images clés, vous pouvez utiliser les propriétés suivantes de l'animation Webkit:
-
nom-animation - définit l'animation utilisée. Pointez-le sur rebond , l'ensemble d'images clés défini précédemment. Si le nom n'est pas trouvé (il est manquant ou mal orthographié), le navigateur suppose la valeur par défaut none et aucune animation n'est produite:
-webkit-animation-name: bounce;
-
animation-duration - définit la durée de l'animation. Le format de valeur de temps est un nombre suivi d'un identifiant d'unité de temps. Les identificateurs d'unités de temps sont des ms pour des millisecondes et des s pour des secondes (1000 ms, 1s). L'animation de la balle rebondissante dure une seconde.
La figure illustre la manière dont le navigateur crée automatiquement les images tweened - les images entre le haut et le bas. Vous définissez le début et la fin et le navigateur remplit ce qui est "in-be tween . "
webkit-animation-durée: 1s;
-
animation-itération-nombre - définit le nombre de fois qu'un cycle d'animation est joué.La valeur par défaut est 1, et cette valeur fait jouer l'animation du début à la fin une fois. Une valeur d'infini provoque la répétition de l'animation pour toujours. Comme vous pouvez le deviner sur la base de cette information, dans l'exemple suivant, l'animation est lue dix fois:
-webkit-animation-itération-count: 10;
-
animation-direction - définit si l'animation doit être jouée à l'envers tous les deux cycles. Si l'option alternate est spécifiée, tous les autres cycles d'animation sont joués dans le sens inverse. Lorsqu'une animation est jouée à l'envers, les fonctions de chronométrage sont également inversées.
C'est pourquoi vous devez définir la balle comme rebondissant seulement. L'animation alternative est jouée à l'envers, ramenant la balle au fond de la boîte (pas très différente de la gravité).
-webkit-animation-direction: alterné;
Mettez tout ensemble et la règle de style qui fait fonctionner l'animation de la balle rebondissante ressemble à ceci:
#animationDemo #ball {-webkit-animation-name: bounce; -webkit-animation-durée: 1s; -webkit-animation-itération-count: 10; -webkit-animation-direction: alternate;}
Lorsque vous entrez une ou plusieurs propriétés, assurez-vous de suivre cet ordre:
-
transition-property
-
transition-duration
-
transition-timing-function > transition-delay
-
Utilisez l'instruction suivante pour la démonstration de la balle rebondissante:
#animationDemo #ball {bounce 1s 10 alternate;}
Pour une liste complète des propriétés CSS que vous pouvez animer en utilisant des transitions, visitez CSS Transitions Module Niveau 3.
