Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.
La propriété animation-direction
indique si les cycles de l'animation doivent être joués dans le sens inverse et/ou de façon alternée.
Généralement, on passera par la propriété raccourcie animation
qui permet de définir les différentes propriétés liées aux animations avec une déclaration.
Valeur initiale | normal |
---|---|
Applicabilité | tous les éléments, ainsi que les pseudo-elements ::before et ::after |
Héritée | non |
Média | visuel |
Valeur calculée | comme spécifié |
Animable | non |
Ordre canonique | l'ordre unique et non-ambigu défini par la grammaire formelle |
Syntaxe
/* Valeurs avec un mot-clé */ animation-direction: normal; animation-direction: reverse; animation-direction: alternate; animation-direction: alternate-reverse; /* Gestion de plusieurs animations */ animation-direction: normal, reverse; animation-direction: alternate, reverse, normal; /* Valeurs globales */ animation-direction: inherit; animation-direction: initial; animation-direction: unset;
Valeurs
normal
- L'animation est jouée dans le sens normal à chaque cycle. Autrement dit, au début de chaque cycle, l'animation est initialisée dans l'état de début. C'est le réglage par défaut.
reverse
- L'animation est jouée dans le sens inverse à chaque cycle. Au début de chaque cycle, l'animation reprend depuis l'état de fin.
alternate
- La lecture de l'animation se fait de façon alternée et change de sens à chaque cycle en commençant par le sens normal. Lorsque le sens est inversé, les étapes de l'animation sont effectuées de façon inversée et les fonctions de progression (timing functions) sont également inversées (
ease-in
sera ainsi remplacée parease-out
). Le premier cycle se fait dans le sens normal, le deuxième dans le sens inverse et ainsi de suite. alternate-reverse
- La lecture de l'animation se fait de façon alternée et change de sens à chaque cycle en commençant par le sens inverse (cf. ci-avant). Le premier cycle se fait dans le sens inverse, le deuxième dans le sens normal et ainsi de suite.
Syntaxe formelle
<single-animation-direction>#où
<single-animation-direction> = normal | reverse | alternate | alternate-reverse
Exemples
CSS
p { animation-duration: 5s; animation-name: glissement; animation-iteration-count: infinite; } .aller { animation-direction: normal; } .retour { animation-direction: reverse; } @keyframes glissement { from { margin-left: 100%; width: 300%; } to { margin-left: 0%; width: 100%; } }
HTML
<p class="aller"> La Chenille et Alice se considérèrent un instant en silence. Enfin la Chenille sortit le houka de sa bouche, et lui adressa la parole d’une voix endormie et traînante. </p> <p class="retour"> « Revenez, » lui cria la Chenille. « J’ai quelque chose d’important à vous dire ! » </p>
Résultat
Spécifications
Spécification | État | Commentaires |
---|---|---|
CSS Animations La définition de 'animation-direction' dans cette spécification. |
Version de travail | Définition initiale. |
Compatibilité des navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Support simple |
(Oui)-webkit43.0 |
5.0 (5.0)-moz 16.0 (16.0)[1] |
10 | 12-o 12.50 |
4.0-webkit |
reverse |
19 | 16.0 (16.0) | 10 | (Oui) | (Oui) |
alternate-reverse |
19 | 16.0 (16.0) | 10 | (Oui) | (Oui) |
Fonctionnalité | Android | Android Webview | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile | Chrome for Android |
---|---|---|---|---|---|---|---|
Support simple | ? | ? | 5.0 (5.0)-moz 16.0 (16.0)[1] |
? | ? | ? | (Oui)-webkit43.0 |
reverse |
Pas de support | ? | 16.0 (16.0) | ? | ? | Pas de support | (Oui)-webkit43.0 |
alternate-reverse |
? | ? | 16.0 (16.0) | ? | ? | ? | (Oui)-webkit43.0 |
[1] En plus de la version préfixée par -moz
, Gecko 44.0 (Firefox 44.0 / Thunderbird 44.0 / SeaMonkey 2.41) prend en charge la version préfixée par -webkit
à des fins de compatibilité web grâce à la préférence layout.css.prefixes.webkit
dont la valeur par défaut vaut false
. Depuis Gecko 49.0 (Firefox 49.0 / Thunderbird 49.0 / SeaMonkey 2.46), cette valeur par défaut est passée à true
.