animation-fill-mode
老师,试了很多例子,但还是有点不太理解这几个属性的效果
backwards 在动画延时或未播放呈现动画开始的状态 (第一帧)
但是动画未播放之前不就是本身的样子吗?
8
收起
正在回答 回答被采纳积分+1
1回答
好帮手慕码
2020-02-03 11:29:52
同学你好,在 animation-delay 所指定的一段时间内,在动画显示之前,应用开始属性值(在第一个关键帧中定义)。如果这几个属性不太清楚的话,可以对比着来看下:
forwards和both使得第二个元素和第三个元素,在动画结束后仍然保持动画最后一帧的状态。而第一个元素没有。
backwards和both使得第一个元素和第三个元素,在动画添加后都立即变为动画第一帧的状态。而第二个元素没有应用第一帧的状态。
both 在动画开始之前,保持为第一帧状态,在动画结束后,保持为最后一帧的状态
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style> div{ width: 100px; height: 100px; background: red; border: 1px solid green; margin: 10px; } .div1{ animation:mood 1s linear 1s backwards; } .div2{ animation:mood 1s linear 1s forwards; } .div3{ animation:mood 1s linear 1s both; } @keyframes mood{ 0%{ transform: translateX(-50px); } 50%{ transform: translateX(0px); } 100%{ transform: translateX(50px); } } </style> </head> <body> <div class="div1">1</div> <div class="div2">2</div> <div class="div3">3</div> </body> </html>
同学可以测试下如上代码,通过效果来区分属性。
如果我的回答帮到了你,欢迎采纳,祝学习愉快~
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星