如何理解animation-fill-mode及其使用

发布网友 发布时间:2022-04-22 08:14

我来回答

2个回答

懂视网 时间:2022-04-28 18:21

animation-fill-mode属性是用于当动画不播放时(当动画完成时,或当动画有一个延迟未开始播放时),要应用到元素的样式,即其动画效果是否可见。

CSS3 animation-fill-mode属性

作用:animation-fill-mode 属性规定动画在播放之前或之后,其动画效果是否可见。

说明:默认情况下,CSS 动画在第一个关键帧播放完之前不会影响元素,在最后一个关键帧完成后停止影响元素。animation-fill-mode 属性可重写该行为。

语法:

animation-fill-mode : none | forwards | backwards | both;

none:不改变默认行为。

forwards: 当动画完成后,保持最后一个属性值(在最后一个关键帧中定义)。

backwards:在 animation-delay 所指定的一段时间内,在动画显示之前,应用开始属性值(在第一个关键帧中定义)。

both:向前和向后填充模式都被应用。

注:Internet Explorer 9 以及更早的版本不支持 animation-fill-mode 属性。

CSS3 animation-fill-mode属性的使用示例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title></title> 
<style> 
div
{
	width:100px;
	height:100px;
	background:red;
	position:relative;
	animation:mymove 3s;
	animation-iteration-count:2;
	animation-fill-mode:forwards;

	/* Safari 和 Chrome */
	-webkit-animation:mymove 3s;
	-webkit-animation-iteration-count:2;
	-webkit-animation-fill-mode:forwards;
}

@keyframes mymove
{
	from {top:0px;}
	to {top:200px;}
}

@-webkit-keyframes mymove /* Safari 和 Chrome */
{
	from {top:0px;}
	to {top:200px;}
}
</style>
</head>
<body>

<div></div>

</body>
</html>

效果图:

1.gif

热心网友 时间:2022-04-28 15:29

通俗的讲就是动画结束之后保持什么状态。 none 表示不设置结束之后的状态,默认情况下回到跟初始状态一样。 forwards 表示将动画元素设置为整个动画结束时的状态。 backwards 明确设置动画结束之后回到初始状态。 both 表示设置为结束或者开始时候的状态。一般都是回到默认状态。 剩下那些逗号分隔的就是配置多个。写几个 demo 试试就明白了。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com