--- title: animation-fill-mode slug: Web/CSS/animation-fill-mode tags: - CSS - CSS Animations - CSS Property - Experimental - Reference translation_of: Web/CSS/animation-fill-mode ---
CSS 属性 animation-fill-mode
设置CSS动画在执行之前和之后如何将样式应用于其目标。
使用简写属性 {{cssxref("animation")}} 一次性设置所有动画属性通常很方便。
/* Single animation */ animation-fill-mode: none; animation-fill-mode: forwards; animation-fill-mode: backwards; animation-fill-mode: both; /* Multiple animations */ animation-fill-mode: none, backwards; animation-fill-mode: both, forwards, none;
none
forwards
animation-direction |
animation-iteration-count |
last keyframe encountered |
---|---|---|
normal |
even or odd | 100% or to |
reverse |
even or odd | 0% or from |
alternate |
even | 0% or from |
alternate |
odd | 100% or to |
alternate-reverse |
even | 100% or to |
alternate-reverse |
odd | 0% or from |
backwards
animation-direction |
first relevant keyframe |
---|---|
normal or alternate |
0% or from |
reverse or alternate-reverse |
100% or to |
both
forwards
和backwards
的规则,从而在两个方向上扩展动画属性。注意:当您在animation-*
属性上指定多个以逗号分隔的值时,它们将根据值的数量以不同的方式分配给 {{cssxref("animation-name")}} 属性中指定的动画。 有关更多信息,请参阅设置多个动画属性值。
{{csssyntax}}
您可以在以下示例中看到 animation-fill-mode
的效果。 它演示了如何对于运行无限时间的动画,可以使其保持最终状态而不是恢复到原始状态(这是默认状态)。
<p>Move your mouse over the gray box!</p> <div class="demo"> <div class="growsandstays">This grows and stays big.</div> <div class="grows">This just grows.</div> </div>
.demo { border-top: 100px solid #ccc; height: 300px; } @keyframes grow { 0% { font-size: 0; } 100% { font-size: 40px; } } .demo:hover .grows { animation-name: grow; animation-duration: 3s; } .demo:hover .growsandstays { animation-name: grow; animation-duration: 3s; animation-fill-mode: forwards; }
{{EmbedLiveSample('Example',700,300)}}
更多示例请查看 CSS 动画 。
Specification | Status | Comment |
---|---|---|
{{SpecName('CSS3 Animations', '#animation-fill-mode', 'animation-fill-mode')}} | {{Spec2('CSS3 Animations')}} | Initial definition. |
{{cssinfo}}
{{Compat("css.properties.animation-fill-mode")}}