Les animations en CSS
Histoire
L'animation CSS apparaît dans la version 3 du CSS depuis 2010 en pleine guerre des navigateurs.
Elle permet l'application d'animations basiques, de translation, rotation, transition sans recourir au JavaScript. Même si elle existe depuis 2010, elle n'est pleinement intégrée par l'ensemble des navigateurs qu'à partir de 2015 (lancement de Edge).
Faire une animation basique
Nous allons faire une animation trés simple, un bloc va de haut en bas en continue. Commençons par le style de base
- <div class='exempleAnimate'>
- </div>
- .exempleAnimation{
- width:300px;
- height:500px;
- background:#555;
- }
A présent définissons notre animation grâce au sélécteur @keyframes. Il existe une propriété de CSS qui permet de traduire un mouvement translate.
Ici nous allons utiliser la proprité translateY pour traduire le mouvement de haut en bas
- @keyframes UpDown{
- /*au départ*/
0%{translateY(20px);} - /*à mis chemin*/
50%{translateY(0);} - /*au final*/
100%{translateY(20px);}
- /*au départ*/
- }
- [...]
Pour finir nous allons ajouter cette animation à notre bloc grace à propriété animation
- [...]
- .exempleAnimation{
- width:300px;
- height:500px;
- background:#555;
- animation: UpDown infinite 3s;
- }
Voici la liste des valeurs associées à la propriétéanimation. On peut les définir indépendement les une des autres
Nom | Définition | Valeur par défaut |
---|---|---|
animation-name | Nom de l'animation @keyframes | none |
animation-duration | définit la durée d'une animation pour parcourir un cycle | 0s |
animation-timing-function | définit la façon dont une animation CSS doit se dérouler au fur et à mesure de chaque cycle | ease |
animation-delay | définit la durée d'attente avant de démarrer une animation une fois qu'elle a été appliquée à un élément. | 0s |
animation-iteration-count | indique le nombre de cycles utilisés pour répéter une animation avant que celle-ci s'arrête. | 1 |
animation-direction | indique si les cycles de l'animation doivent être joués dans le sens inverse et/ou de façon alternée. | normal |
animation-fill-mode | indique la façon dont une animation CSS doit appliquer les styles à sa cible avant et après son exécution. | none |
animation-play-state | définit si une animation est en cours d'exécution ou si elle est en pause. | running |