yuanjinger / wiki

常见问题总结,概念打磨
0 stars 0 forks source link

贝塞尔曲线(cubic-bezier of CSS) #6

Open yuanjinger opened 6 years ago

yuanjinger commented 6 years ago

cubic-bezier 又称三次贝塞尔,主要是为 animation 生成速度曲线的函数,规定是 cubic-bezier(, , , )。 image 从上图我们需要知道的是 cubic-bezier 的取值范围:

P0:默认值 (0, 0) P1:动态取值 (x1, y1) P2:动态取值 (x2, y2) P3:默认值 (1, 1) 我们需要关注的是 P1 和 P2 两点的取值,而其中 X 轴的取值范围是 0 到 1,当取值超出范围时 cubic-bezier 将失效;Y 轴的取值没有规定,当然也毋须过大。

最直接的理解是,将以一条直线放在范围只有 1 的坐标轴中,并从中间拿出两个点来拉扯(X 轴的取值区间是 [0, 1],Y 轴任意),最后形成的曲线就是动画的速度曲线。