淘先锋技术网

首页 1 2 3 4 5 6 7

今天我们来介绍一下CSS3动画中的out函数,它是一个非常有用的函数,可以使元素以特定的方式动画结束。

/* out函数有很多种,这里只介绍几种 */
/* ease-out:先加速后减速 */
animation-timing-function: ease-out;
/* cubic-bezier(0,0,0.58,1):自定义曲线,可以实现复杂效果 */
animation-timing-function: cubic-bezier(0,0,0.58,1);
/* steps(4, end):分帧动画,每4帧结束,最后一帧保持不变 */
animation-timing-function: steps(4, end);

接下来我们演示一下使用out函数实现的动画效果:

/* 定义一个50px * 50px的div,初始位置在屏幕左上角 */
div {
width: 50px;
height: 50px;
background-color: red;
position: absolute;
top: 0;
left: 0;
}
/* 给div添加动画 */
div {
animation: move 2s ease-out;
}
/* 定义动画 */
@keyframes move {
from { left: 0; top: 0; }
to { left: 200px; top: 200px; }
}

上面的代码定义了一个从左上角移动到右下角的动画,使用了ease-out函数,让动画从开始时逐渐加速,到结束时逐渐减速。你也可以尝试使用其他的out函数,看看有什么不同的效果。