CSS3 transition-timing-function 属性说明

下列为动画、过渡函数说明:

函数功能描述图例
ease默认值,元素样式从初始状态过渡到终止状态
的时速由快到慢,逐渐变慢。
(cubic-bezier(0.25,0.1,0.25,1))
linear元素的样式从初始状态过渡到终止状态的
速度保值不变。
(等于 cubic-bezier(0,0,1,1))
ease-in元素的样式从初始状态过渡到终止状态时,
速度越来越快,呈一种加速状态。这种效果称为渐显效果。
(等于 cubic-bezier(0.42,0,1,1))
ease-out元素的样式从初始状态过渡到终止状态时,
速度越来越慢,呈一种减速状态。这种效果称之为渐隐效果。
(等于 cubic-bezier(0,0,0.58,1))
ease-in-out元素的样式从初始状态到终止状态时,
先加速再减速,这种效果称之为渐显渐隐效果。
(等于 cubic-bezier(0.42,0,0.58,1))

上述五个曲线均为三次贝塞尔曲线,这些函数用于动画种也不是十分准确。如果要制作一些动画要求精确度搞的函数,那么需要自己来定义一些更好的函数。

下图为一个三次贝塞尔曲线示意图:

一个贝塞尔曲线是由四个点控制的,如图中的四个点为p0,p1,p2,p3。每个点由水平和垂直二个值来确定,也就是常说的X和Y值确定。

由图可以得知,P1和P2点的值很容易得到,而且它们的值都是一个0~1的小数,不过有一点需要特别注意,三次贝塞尔曲线中的P0和P3二个点是无法设置的,因为它们总是存在HTML中的,也就是说它们总会是(0,0)和(1,1).


再CSS3中定义的三次贝塞尔曲线的函数如下:

transition-timing-function:cubic-bezier(0.5,0,1,1)


注意,三次贝塞尔曲线的每个点的值只能是0~1之间。



2020-01-10 13:38 举报

关于挟翼

挟翼一款提供UI页面设计的软件。
您只需要动一动鼠标绘制相关的元素,软件会自动帮你完成CSS样式和HTML代码。
从现在开始注册,立即赠送一年VIP会员。活动结束日期待定。