A Guide to the animation-fill-mode Feature in CSS

css animation fill mode guide
10 November 2024

An Introduction to animation-fill-mode

In the world of CSS animations, the animation-fill-mode feature plays a crucial role in controlling the appearance of elements before and after the execution of the animation. This feature allows us to determine how styles of an animation are applied to the element when the animation is not currently running.

Different States of animation-fill-mode

This feature has several states that each can be used for specific cases. The forwards state causes the styles of the animation to remain on the element after it has finished. The backwards state can also apply initial styles of the animation before it starts running. Additionally, both provides a combination of both states, while none indicates that no changes will occur in the element's style.

Practical Application of animation-fill-mode

Using animation-fill-mode can prevent unwanted jumps in animations and provide a smoother experience for users. This state may significantly enhance the user's experience, especially in complex animations.

Example Code for the animation-fill-mode Feature


@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.element {
    animation-name: fadeIn;
    animation-duration: 2s;
    animation-fill-mode: forwards;
}

Explanation of the Above Code Line by Line

@keyframes fadeIn – This defines an animation that changes from opacity 0 to 1.
from – The animation starts with opacity 0.
to – The animation ends with opacity 1.
.element – This class is applied to an HTML element.
animation-name – This is the name of the animation that should be executed; here, it is fadeIn.
animation-duration – This specifies the duration of the animation set to 2 seconds.
animation-fill-mode – This indicates that after the animation ends, the element will retain the final style (opacity 1).

FAQ

?

What does the animation-fill-mode feature depend on?

?

How can I configure the different states of animation-fill-mode?