前言
今天来说个好东西 css3 动画效果。它可以取代许多网页动画图像、Flash 动画和 JavaScript 实现的效果。
@keyframes 规则
建 CSS3 动画,就需要了解 @keyframes规则
@keyframes 是用来创建动画的。指定一个 CSS 样式和动画将逐步从目前的样式更改为新的样式
当在 @keyframes 创建动画,把它绑定到一个选择器,否则动画不会有任何效果。
指定至少这两个CSS3的动画属性绑定向一个选择器:
!!必须定义动画的名称和动画的持续时间。如果省略的持续时间,动画将无法运行,因为默认值是0
<style type="text/css">
div {
width: 100px;
height: 100px;
background: #00FFFF;
margin: 0 auto;
animation: myfirst 3s; /* 绑定 */
}
@keyframes myfirst { /* 动画名称 myfirst */
from {
background: #00FFFF;
}
to {
background: #4c2bb7;
}
}
</style>
<body>
<div></div>
</body>
上面的意思是 把 "myfirst" 动画捆绑到 div 元素,时长:3 秒
CSS3动画是什么?
动画是使元素从一种样式逐渐变化为另一种样式的效果。
可以改变任意多的样式任意多的次数。
用百分比来规定变化发生的时间,或用关键词 "from" 和 "to",等同于 0% 和 100%。
0% 是动画的开始,100% 是动画的完成。
为了得到最佳的浏览器支持应该始终定义 0% 和 100% 选择器。
<style type="text/css">
div {
width: 100px;
height: 100px;
background: red;
animation: myfirst 3s;
}
@keyframes myfirst {
0% {
background: red;
}
25% {
background: yellow;
}
50% {
background: blue;
}
100% {
background: green;
}
}
</style>
<body>
<div></div>
</body>
当动画为 25% 及 50% 时改变背景色,然后当动画 100% 完成时再次改变
知乎视频www.zhihu.com