The CSS transitions module specifies functionality for creating gradual transitions between different CSS property values. The behavior of these transitions can be controlled by specifying their easing function, duration, and other values.
Normally, when the value of a CSS property changes, the result of the change from the old value to the new value is immediate. The CSS transitions module enables controlling a progression from the old property state to the new state over a specified period of time. It also provides event handlers to allow code to be run in response to different stages of a transition being reached.
In certain cases, there is no originating "from" value for a transition. For example, if an element gets added to the DOM, the styles defined are for the "to" state. This module provides the @starting-style at-rule, which enables defining starting styles for such cases. The module also defines how discrete property values should be transitioned, such as transitioning the discretely animated display property from the none value to a displayed value.
Reference
Properties
transitiontransition-behaviortransition-delaytransition-durationtransition-propertytransition-timing-function
At rules
@starting-style
Interfaces
CSSStartingStyleRuleCSSTransitiontransitionPropertyproperty
TransitionEventTransitionEvent()constructorTransitionEvent.propertyNamepropertyTransitionEvent.elapsedTimepropertyTransitionEvent.pseudoElementpropertytransitioncanceleventtransitionendeventtransitionruneventtransitionstartevent
Guides
- Using CSS transitions
- Step-by-step tutorial explaining how to create transitions using CSS. This article describes each relevant CSS property and explains how they interact with each other.
- Animating
display- Transitioning to and from the
nonevalue of the discretely animateddisplayproperty.
- Transitioning to and from the
- Transitioning a popover and transitioning a
<dialog>- Examples of transitioning from
@starting-styleto final:popover-openand:openpseudo-class styles.
- Examples of transitioning from
Related concepts
interpolate-sizepropertycalc-size()functionglossary term
CSS easing functions module:
easing-functiondata-type
CSS animations module:
animationshorthandanimation-delayanimation-directionanimation-durationanimation-fill-modeanimation-iteration-countanimation-nameanimation-play-stateanimation-timing-function
CSS transforms module:
transformtransform-boxtransform-origintransform-style
CSS scroll snap module:
scroll-snap-typescroll-paddingscroll-snap-alignscroll-marginscroll-snap-stop
Specifications
See also
opacityvisibilityViewTransitioninterfacePageTransitionEventinterface