animation-direction property CSS Reference

Definition and Usage

The animation-direction CSS property indicates whether the animation should play in reverse on alternate cycles.

It is often convenient to use the shorthand property animation to set all animation properties at once.

  • Initial normal
  • Applies to all elements, ::before and ::after pseudo-element
  • Inherited no
  • Media visual
  • Computed Value as specified
  • Animatable no
  • Canonical order the unique non-ambiguous order defined by the formal grammar


Formal syntax:  <single-animation-direction>#
animation-direction: normal
animation-direction: reverse
animation-direction: alternate
animation-direction: alternate-reverse
animation-direction: normal, reverse
animation-direction: alternate, reverse, normal


The animation should play forward each cycle. In other words, each time the animation cycles, the animation will reset to the beginning state and start over again. This is the default animation direction setting.
The animation should reverse direction each cycle. When playing in reverse, the animation steps are performed backward. In addition, timing functions are also reversed; for example, an ease-in animation is replaced with an ease-out animation when played in reverse. The count to determinate if it is an even or an odd iteration starts at one.
The animation plays backward each cycle. Each time the animation cycles, the animation resets to the end state and start over again.
The animation plays backward on the first play-through, then forward on the next, then continues to alternate. The count to determinate if it is an even or an odd iteration starts at one.


No examples


Desktop browsers

FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support (Yes)-webkit5.0 (5.0)-moz
16.0 (16.0)
reverse1916.0 (16.0)10Not supportedNot supported
alternate-reverse1916.0 (16.0)10Not supportedNot supported

Mobile browsers

FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic supportNA (Yes)-webkit5.0 (5.0)-moz
16.0 (16.0)
reverseNot supported (Yes)-webkit16.0 (16.0)NANANot supported
alternate-reverseNA (Yes)-webkit16.0 (16.0)NANANA

Relative articles