使用关键字 from
和 to
定义。
/* 定义动画 */
@keyframe 动画名 {
/* 第一帧 */
from {
/* css属性设置 */
}
/* 最后一帧 */
to {
/* css属性设置 */
}
}
使用百分比定义,可以设置更多的关键帧,让动画更加流畅和逼真。
/* 定义动画:方式二 */
@keyframe 动画名 {
/* 第一帧 */
0% {
/* css属性设置 */
}
20% {
}
/* 最后一帧 */
100% {
/* css属性设置 */
}
}
选择器 {
/* 指定动画名 */
animation-name: 动画名;
/* 动画持续的时间 */
animation-duration: 5s;
/* 动画的延迟时间 */
animation-delay: 1s;
}
transition-timing-function
一致,可以查看另一片博文:过渡(transition)<html>
<style>
@keyframes animal {
0% {
height: 100px;
width: 100px;
background-color: pink;
}
50% {
background-color: blue;
transform: translateX(400px);
}
100% {
transform: translateX(900px);
background-color: blueviolet;
}
}
.container {
width: 1000px;
height: 100px;
border: 1px black solid;
}
.child {
height: 100px;
width: 100px;
background-color: red;
border-radius: 50px;
/* 指定动画的名称 */
animation-name: animal;
/* 指定动画持续的时间 */
animation-duration: 5s;
/* 指定动画延迟的时间 */
animation-delay: 1s;
animation-fill-mode: both;
animation-iteration-count: infinite;
animation-direction: alternate;
}
</style>
<div class="container">
<div class="child"></div>
</div>
</html>
ps:运行代码,结合实际效果,更容易的掌握各个属性的作用,以及各个属性值的含义。