css3贝塞尔曲线(cubic-bezier)

css3 animation模块,其中animation-timing-function 和 transition-timing-function两个属性来控制动画速率划分提供了ease,liner,ease-in,ease-out,ease-in-out几个预设速率,还可以同过cu...

css3 animation模块,其中animation-timing-function 和 transition-timing-function两个属性来控制动画速率划分提供了ease,liner,ease-in,ease-out,ease-in-out几个预设速率,还可以同过cubic-bezier来自界说速率,想要深入领会CSS3动画,实现为所欲为的动画效果,照样有需要明白下其中的原理。

CSS3动画速率的控制通过三次贝塞尔曲线函数实现,界说规则为 

cubic-bezier (x1,y1,x2,y2)


cubic-bezier又称三次贝塞尔,主要是为 animation 天生速率曲线的函数,划定是 cubic-bezier(<x1>, <y1>, <x2>, <y2>)。 从下图中简要明白一下 cubic-bezier:



从上图我们需要知道的是 cubic-bezier 的取值局限: 

P0:默认值 (0, 0) 
P1:动态取值 (x1, y1) 
P2:动态取值 (x2, y2) 
P3:默认值 (1, 1)

我们需要关注的是 P1 和 P2 两点的取值,而其中 X 轴的取值局限是 0 到 1,当取值超出局限时 cubic-bezier 将失效;Y 轴的取值没有划定,固然也毋须过大。 形成P0到P3曲线就是贝塞尔曲线。 

一条直线放在局限只有 1 的坐标轴中,并从中心拿出两个点来拉扯(x1,y1,x2,y2),最后形成的曲线就是动画的速率曲线。

.animation {
    transition: all 2s cubic-bezier(.65,.13,.22,.88);
}


CSS3提供的几个预设速率: 

几个常用的固定值对应的 cubic-bezier 值以及速率曲线

1.ease   对应自界说cubic-bezier(.25,.01,.25,1),效果为先慢后快再慢;


2.linear   对应自界说cubic-bezier(0,0,1,1),效果为匀速直线; 


 3.ease-in  对应自界说cubic-bezier(.42,0,1,1),效果为先慢后快; 


 4.ease-out  对应自界说cubic-bezier(0,0,.58,1),效果为先快后慢; 


 5.ease-in-out   对应自界说cubic-bezier(.42,0,.58,1),效果为先慢后快再慢。 


往返缓冲效果:cubic-bezier(0.68, -0.55, 0.27, 1.55) 如下图  


思源资源网:分类流动

1.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入

2.腾讯云: 提供云服务器、云数据库、云存储、视频与CDN、域名等服务。腾讯云各种产物的最新流动,优惠券领取点击进入

3.广告同盟: 整理了现在主流的广告同盟平台,若是你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/6063

  • 发表于 2021-02-11 16:57
  • 阅读 ( 236 )
  • 分类:互联网

0 条评论

请先 登录 后评论
注单异常
注单异常

713 篇文章

你可能感兴趣的文章

相关问题