animation-fill-mode
语法:
animation-fill-mode:none | forwards | backwards | both [ ,
none | forwards | backwards | both ]*
默认值:none
适用于:所有元素,包含伪对象:after和:before
继承性:无
取值:
none:
默认值。不设置对象动画之外的状态
forwards:
设置对象状态为动画结束时的状态
backwards:
设置对象状态为动画开始时的状态
both:
设置对象状态为动画结束或开始的状态
说明:
检索或设置对象动画时间之外的状态
如果提供多个属性值,以逗号进行分隔。
对应的脚本特性为animationFillMode。
这个是最简单的方法,
也可以侦听动画结束事件,给元素加个class类名,这个class定义的就是元素结束时的状态的css样式
<!doctype html><html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<style type="text/css">
*{padding:0margin:0border:0}
.left{width:50%float:left
animation:myfirst 5s
-moz-animation:myfirst 5s/* Firefox */
-webkit-animation:myfirst 5s/* Safari and Chrome */
-o-animation:myfirst 5s/* Opera */
}
.right{width:50%float:left
animation:myfirst 5s
-moz-animation:myfirst 5s/* Firefox */
-webkit-animation:myfirst 5s/* Safari and Chrome */
-o-animation:myfirst 5s/* Opera */
animation-delay: 5s/* W3C 和 Opera */
-moz-animation-delay: 5s/* Firefox */
-webkit-animation-delay: 5s/* Safari 和 Chrome */
}
@keyframes myfirst
{
0% { opacity:0}
100% { opacity:1}
}
@-moz-keyframes myfirst /* Firefox */
{
0% { opacity:0}
100% { opacity:1}
}
@-webkit-keyframes myfirst /* Safari 和 Chrome */
{
0% { opacity:0}
100% { opacity:1}
}
@-o-keyframes myfirst /* Opera */
{
0% { opacity:0}
100% { opacity:1}
}
</style>
</head>
<body>
<div>
<div class="left"><img src="images/xxx.jpg"></div>
<div class="right">文字XXXXXXXXXXXXXXXXXXXXXXXX </div>
</div>
</body>
</html>
你在设置元素position:fixed的时候,给元素添加一个transform:translateZ(0)目的是为了开启GPU硬件加速,提高性能和流畅的动画效果 也能解决你这个问题
你说你用transform的话 如果用到translate;把translate换成translate3d,在原来的参数后面加个Z方向的平移 0即可;