如何在css3中使用animation属性

这篇文章给大家介绍如何在css3中使用animation属性,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

animation-name 动画名称,可以有多个值,用逗号隔开,表示绑定了多个动画

animation-name属性为动画指定一个名称

animation-name兼容主流的浏览器,不过还是需要加前缀去兼容

animation-name有两个属性值,分别是keyframename和none

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style>     body{         margin:0 auto;             background:#abcdef;         }     div{             width:800px;         height:800px;         margin:0 auto;         }     .container{         position: relative;     }     .inner, .middle, .outer, .pic{         position: absolute;         top:0;         right:0;         bottom:0;         left:0;         margin:auto;             }     .inner{         background:url(source/circle_inner.jpg) center no-repeat;         animation-name:circle_inner;     }     .middle{         background:url(source/circle_middle.jpg) center no-repeat;         animation-name:circle_middle;     }     .outer{         background:url(source/circle_outer.jpg) center no-repeat;         animation-name:circle_outer;     }     .pic{         background:url(source/pic.jpg) center no-repeat;     } </style> </head> <body>     <div class="container">         <div class="inner"></div>         <div class="middle"></div>         <div class="outer"></div>         <div class="pic"></div>     </div> </body> </html>

animation-duration 动画持续时间 默认是0

animation-timing-function 动画时间函数

animation-delay 动画延迟时间

animation-delay 属性定义动画什么时候开始,单位可以是秒(s)或毫秒(ms),允许负值,-2s使动画马上开始,但会跳过2s进入动画

animation-iteration-count 动画循环次数

animation-iteration-count: number | infinite 默认为1

animation-direction: normal | reverse | alternate | alternate-reverse 正常; 反向; 正反交替; 反正交替

alternate 和 alternate-reverse ,如果animation-itreation-count 不是设置成 infinite ,则只会执行一次就停止

animation-fill-mode 动画延迟未执行时,或者动画执行完毕后的停留状态(动画不能设置为循环,否则无法停止)

animation-fill-mode: none | forwards | backwards | both 无 结束状态 开始状态 看情况

animation-play-state: running | paused 动画运行状态:运行 | 暂停

animation 简写

animation: name duration timing-function delay iteration-count direction fill-mode play-state

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style>     body{         margin:0 auto;             background:#abcdef;         }     div{             width:800px;         height:800px;         margin:0 auto;         }     .container{         position: relative;         -webkit-transform-style:preserve-3d;            -moz-transform-style:preserve-3d;             -ms-transform-style:preserve-3d;              -o-transform-style:preserve-3d;                 transform-style:preserve-3d;     }     .inner, .middle, .outer, .pic{         position: absolute;         top:0;         right:0;         bottom:0;         left:0;         margin:auto;             }     .container:hover div{         -webkit-animation-play-state:paused;            -moz-animation-play-state:paused;             -ms-animation-play-state:paused;              -o-animation-play-state:paused;                 animation-play-state:paused;     }     .inner{         background:url(source/circle_inner.jpg) center no-repeat;             /*循环*/         -webkit-animation:circle_inner 10s ease-in-out 1s infinite alternate running;            -moz-animation:circle_inner 10s ease-in-out 1s infinite alternate running;             -ms-animation:circle_inner 10s ease-in-out 1s infinite alternate running;              -o-animation:circle_inner 10s ease-in-out 1s infinite alternate running;                 animation:circle_inner 10s ease-in-out 1s infinite alternate running;             /*不循环,填充效果*/         /*-webkit-animation:circle_inner 10s ease-in-out 1s forwards running;            -moz-animation:circle_inner 10s ease-in-out 1s forwards running;             -ms-animation:circle_inner 10s ease-in-out 1s forwards running;              -o-animation:circle_inner 10s ease-in-out 1s forwards running;                 animation:circle_inner 10s ease-in-out 1s forwards running;*/     }     .middle{         background:url(source/circle_middle.jpg) center no-repeat;         -webkit-animation:circle_middle 10s ease-in-out 1s infinite alternate running;            -moz-animation:circle_middle 10s ease-in-out 1s infinite alternate running;             -ms-animation:circle_middle 10s ease-in-out 1s infinite alternate running;              -o-animation:circle_middle 10s ease-in-out 1s infinite alternate running;                 animation:circle_middle 10s ease-in-out 1s infinite alternate running;         }     .outer{         background:url(source/circle_outer.jpg) center no-repeat;         -webkit-animation:circle_outer 10s ease-in-out 1s infinite alternate running;            -moz-animation:circle_outer 10s ease-in-out 1s infinite alternate running;             -ms-animation:circle_outer 10s ease-in-out 1s infinite alternate running;              -o-animation:circle_outer 10s ease-in-out 1s infinite alternate running;                 animation:circle_outer 10s ease-in-out 1s infinite alternate running;         }     .pic{         background:url(source/pic.jpg) center no-repeat;     }     @keyframes circle_inner{         0%{ transform:rotateX(0deg); }         50%{ transform:rotateX(90deg); }         100%{ transform:rotateX(360deg); }     }     @keyframes circle_middle{         0%{ transform:rotateY(0deg); }         50%{ transform:rotateY(90deg); }         100%{ transform:rotateY(360deg); }     }     @keyframes circle_outer{         0%{ transform:rotateZ(0deg); }         50%{ transform:rotateZ(90deg); }         100%{ transform:rotateZ(360deg); }     } </style> </head> <body>     <div class="container">         <div class="inner"></div>         <div class="middle"></div>         <div class="outer"></div>         <div class="pic"></div>     </div> </body> </html>

如何在css3中使用animation属性

动画性能优化:

用position-fixed代替background-attachment

带图片的元素放在伪元素中

will-change

兼容性IE13+ 感觉可以放弃了&hellip;&hellip;

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。