transition-duration
Quick Summary for transition-duration
transition-duration
CSS property sets the length of time a transition animation should take to complete. By default, the value is 0s
, meaning that no animation will occur.
Code Usage for transition-duration
/* <time> values */ transition-duration: 6s; transition-duration: 120ms; transition-duration: 1s, 15s; transition-duration: 10s, 30s, 230ms; /* Global values */ transition-duration: inherit; transition-duration: initial; transition-duration: revert; transition-duration: unset;
More Details for transition-duration
transition-duration
The transition-duration
CSS property sets the length of time a transition animation should take to complete. By default, the value is 0s
, meaning that no animation will occur.
You may specify multiple durations; each duration will be applied to the corresponding property as specified by the transition-property
property, which acts as a master list. If there are fewer durations specified than in the master list, the user agent repeat the list of durations. If there are more durations, the list is truncated to the right size. In both case the CSS declaration stays valid.
Syntax
/* <time> values */ transition-duration: 6s; transition-duration: 120ms; transition-duration: 1s, 15s; transition-duration: 10s, 30s, 230ms; /* Global values */ transition-duration: inherit; transition-duration: initial; transition-duration: revert; transition-duration: unset;
Values
<time>
Is a <time>
denoting the amount of time the transition from the old value of a property to the new value should take. A time of 0s
indicates that no transition will happen, that is the switch between the two states will be instantaneous. A negative value for the time renders the declaration invalid.
Formal definition
Initial value | 0s |
---|---|
Applies to | all elements, ::before and ::after pseudo-elements |
Inherited | no |
Computed value | as specified |
Animation type | discrete |
Formal syntax
<time>#
Examples
Example showing different durations
HTML <div class="box duration-1">0.5 seconds</div> <div class="box duration-2">2 seconds</div> <div class="box duration-3">4 seconds</div> <button id="change">Change</button>
CSS .box { margin: 20px; padding: 10px; display: inline-block; width: 100px; height: 100px; background-color: red; font-size: 18px; transition-property: background-color font-size transform color; transition-timing-function: ease-in-out; } .transformed-state { transform: rotate(270deg); background-color: blue; color: yellow; font-size: 12px; transition-property: background-color font-size transform color; transition-timing-function: ease-in-out; } .duration-1 { transition-duration: 0.5s; } .duration-2 { transition-duration: 2s; } .duration-3 { transition-duration: 4s; }
JavaScript function change() { const elements = document.querySelectorAll("div.box"); for (let element of elements) { element.classList.toggle("transformed-state"); } } const changeButton = document.querySelector("#change"); changeButton.addEventListener("click", change);
ResultSpecifications
Specification |
---|
CSS Transitions Level 2 # transition-duration-property |
See also
Using CSS transitionstransition
transition-property
transition-timing-function
transition-delay
TransitionEvent
Last modified: Aug 12, 2021, by MDN contributors
Select your preferred language English (US)EspañolFrançais日本語Русский中文 (简体)正體中文 (繁體) Change language