◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
实现方法:1、使用“@keyframes 动画名称 {50% {transform: rotate(旋转角度);}”语句创建旋转动画;2、使用“元素{animation:动画名称 时间 infinite;}”语句将旋转动画应用于指定元素中。
本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。
css3实现一个旋转的动画
1、想要利用css3实现动画就需要使用animation属性和“@keyframes”规则。
@keyframes是CSS3的一种规则,可以用来定义CSS动画的一个周期的行为,可以创建简单的动画。
立即学习“前端免费学习笔记(深入)”;
动画与转换类似,因为它们都是随时间改变CSS属性的表示值。主要区别在于,当属性值更改时(例如,当悬停时属性值发生改变时),转换会隐式的触发,但在应用动画属性时会显式执行动画。因此,动画需要显示动画属性的显式值。这些值是在@keyframes规则中指定的动画关键帧定义的。因此,@keyframes规则里是由一组封装的CSS样式规则组成的,这些规则描述了属性值如何随时间变化。
然后,使用不同的CSS animation(动画)属性,可以控制动画的许多不同方面,包括动画迭代的次数,是否在开始和结束值之间交替,以及动画是否应该运行或暂停。动画也可以延迟其开始时间。
语法:
/* 定义动画*/ @keyframes 动画名称{ /* 样式规则*/ } /* 将它应用于元素 */ .element { animation-name: 动画名称(在@keyframes中已经声明好的); /* 或使用动画简写属性*/ animation: 动画名称 1s ... }
2、在“@keyframes”规则中使用transform: rotate(旋转角度)控制旋转动作。
实现代码:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style> div { width: 100px; height: 100px; background: pink; margin: 100px; animation: mymove 5s infinite; -webkit-animation: mymove 5s infinite; /* Safari and Chrome */ } @keyframes mymove { 50% { transform: rotate(360deg); } } @-webkit-keyframes mymove{ /* Safari and Chrome */ 50% { transform: rotate(360deg); } } </style> </head> <body> <div></div> </body> </html>
(学习视频分享:css视频教程)
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。