Style animationFillMode 属性 详解
css3基础 2023-07-30 00:45:15小码哥的IT人生shichen
Style animationFillMode 属性
定义和用法
animationFillMode
属性规定动画不播放时(动画结束时,或有“延迟”时)将应用于元素的样式。
默认情况下,CSS 动画在“播放”第一个关键帧之前不会影响正在进行动画的元素,然后在最后一个关键帧完成后停止影响它。animationFillMode
属性可以覆盖此行为。
实例
更改 <div> 元素的 animationFillMode 属性:
document.getElementById("myDIV").style.animationFillMode = "forwards";
完整实例【亲自试一试】:
<!DOCTYPE html>
<html>
<head>
<style>
div {
width: 100px;
height: 100px;
background: red;
position: relative;
animation: mymove 2s 2;
}
@keyframes mymove {
from {left: 0px;}
to {left: 200px;}
}
</style>
</head>
<body>
<h1>HTML Style 对象</h1>
<h2>animationFillMode 属性</h2>
<p>点击“试一试”按钮,让 DIV 元素保持上一个关键帧设置的样式:{left:200px;},当动画结束时。</p>
<button onclick="myFunction()">试一试</button>
<script>
function myFunction() {
document.getElementById("myDIV").style.animationFillMode = "forwards";
}
</script>
<div id="myDIV"></div>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
语法
返回 animationFillMode 属性:
object.style.animationFillMode
设置 animationFillMode 属性:
object.style.animationFillMode = "none|forwards|backwards|both|initial|inherit"
属性值
值 | 描述 |
---|---|
none | 默认值。动画在执行之前或之后不会将任何样式应用于目标。 |
forwards | 动画结束后(由 animation-iteration-count 决定),动画将在动画结束时应用此属性值。 |
backwards |
在 animation-delay 定义的时间段内,动画将应用关键帧中定义的属性值,该关键帧将开始动画的第一次迭代。 这些是从关键帧的值(当动画方向为 "normal" 或 "alternate" 时)或到关键帧的值(当动画方向为 "reverse" 或 "alternate-reverse" 时)。 |
both | 动画将遵循向前和向后的规则。也就是说,它将在两个方向上扩展动画属性。 |
initial | 将此属性设置为其默认值。请参阅 initial。 |
inherit | 从其父元素继承此属性。请参阅 inherit。 |
技术细节
默认值: | none |
---|---|
返回值: | 字符串,表示元素的 animation-fill-mode 属性。 |
CSS 版本: | CSS3 |
浏览器支持
animationFillMode
是 CSS3 (1999) 特性。
所有浏览器都完全支持它:
Chrome | Edge | Firefox | Safari | Opera | IE |
---|---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera | IE |
支持 | 支持 | 支持 | 支持 | 支持 | 11 |
相关页面
CSS 参考手册:animation-fill-mode 属性