CSS cubic-bezier() 函数

实例

从开始到结束变速的过渡效果:

div {
  width: 100px;
  height: 100px;
  background: red;
  transition: width 2s;
  transition-timing-function: cubic-bezier(0.1, 0.7, 1.0, 0.1);
}

亲自试一试

定义和用法

cube-bezier() 函数定义三次贝塞尔曲线(Cubic Bezier curve)。

三次贝塞尔曲线由 P0、P1、P2 和 P3 四个点进行定义。P0 和 P3 是曲线的起点和终点,在 CSS 中,这两个点是固定的,因为坐标是成比例。P0 为 (0, 0),代表初始时间和初始状态,P3 为 (1, 1),代表最终时间和最终状态。

其余的中间点 P1(x1,y1)、P2(x2,y2) 是可以动态改变的两个点,对应 cubic-bezier(x1,y1,x2,y2) 中的四个参数,通过改变 P1、P2 两点的坐标值来动态生成的贝塞尔曲线表示动画中的速度变化。

可以将 cubic-bezier() 函数与 animation-timing-function 属性和 transition-timing-function 属性一起使用。

版本: CSS3

浏览器支持

表格中的数字注明了完全支持该功能的首个浏览器版本。

函数
cubic-bezier() 4.0 10.0 4.0 3.1 10.5

CSS 语法

cubic-bezier(x1,y1,x2,y2)
描述
x1,y1,x2,y2 必需。数值。x1 和 x2 必须是 0 到 1 之间的数字。