动画(animation)是css3中具有颠覆性的特征之一,可通过设置多个节点来精确控制一个或一组动画,常用来实现复杂的动画效果。
相比较过渡,动画可以实现更多变化,更多控制,连续自动播放等效果。
动画的基本使用:
1 先定义动画
2 再使用(调用)动画
定义动画:用keyframes定义动画(类似定义类选择器)
@keyframes 动画名称{
0%{
Width:100px;
}
100%{
Width:200px;
}
}
动画序列:
- 0%是动画的开始,100%是动画的完成,这样的规则就是动画序列
- 在@keyframes中规定某项css样式,就能创建由当前样式逐渐改为新样式的动画效果。
- 动画是使元素从一种样式逐渐变化为另一种样式的效果,你可以任意多的样式任意多的次数
- 请用百分比来规定变化发生的时间,或用关键词“from“和”to“,等同于0%和100%
使用动画:
div {
width: 200px;
height: 200px;
background-color: pink;
/* 2 调用动画 */
/* 动画名称 */
animation-name: move;
/* 持续时间 */
animation-duration: 1s;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
/* 想页面一打开,一个盒子就从左边走到右边 */
/* 1 定义动画 */
@keyframes move {
/* 开始状态 */
0% {
transform: translateX(0px);
}
/* 结束状态 */
100% {
transform: translateX(1000px);
}
}
div {
width: 200px;
height: 200px;
background-color: pink;
/* 2 调用动画 */
/* 动画名称 */
animation-name: move;
/* 持续时间 */
animation-duration: 1s;
}
</style>
</head>
<body>
<div></div>
</body>
</html>