小码哥的IT人生

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 属性

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024