transition-timing-function属性怎么用

2020-07-23 10:28:41
transition-timing-function属性是用来规定过渡效果的速度曲线,它允许过渡效果随着时间来改变其速度;可以实现慢速开始,然后变快,然后慢速结束等等的过渡效果。

CSS3 transition-timing-function属性

作用:transition-timing-function 属性规定过渡效果的速度曲线。该属性允许过渡效果随着时间来改变其速度。

语法:

transition-timing-function: linear|ease|ease-in|ease-out|ease-in-out|cubic-bezier(n,n,n,n);

说明:

linear:规定以相同速度开始至结束的过渡效果(等于 cubic-bezier(0,0,1,1))。

ease:规定慢速开始,然后变快,然后慢速结束的过渡效果(cubic-bezier(0.25,0.1,0.25,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))。

cubic-bezier(n,n,n,n):在 cubic-bezier 函数中定义自己的值。可能的值是 0 至 1 之间的数值。

注:Internet Explorer 9 以及更早版本的浏览器不支持 transition-timing-function 属性;Internet Explorer 10、Firefox、Opera 和 Chrome 支持 transition-timing-function 属性。Safari 支持替代的 -webkit-transition-timing-function 属性。

CSS3 transition-timing-function属性的使用示例

<!DOCTYPE html><html><head><meta charset="UTF-8"><style> div{width:100px;height:100px;background:red;margin: 10px 0px;}.demo1{transition:width 2s;transition-timing-function:linear;/* Firefox 4 */-moz-transition:width 2s;-moz-transition-timing-function:linear;/* Safari and Chrome */-webkit-transition:width 2s;-webkit-transition-timing-function:linear;/* Opera */-o-transition:width 2s;-o-transition-timing-function:linear;}.demo2{transition:width 2s;transition-timing-function:ease;/* Firefox 4 */-moz-transition:width 2s;-moz-transition-timing-function:ease;/* Safari and Chrome */-webkit-transition:width 2s;-webkit-transition-timing-function:ease;/* Opera */-o-transition:width 2s;-o-transition-timing-function:ease;}.demo1:hover,.demo2:hover{width:300px;}</style></head><body><p>请把鼠标指针移动到红色的 div 元素上,查看过渡效果。</p><p>匀速过渡</p><div class="demo1"></div><p>慢速开始,然后变快,然后慢速结束</p><div class="demo2"></div><p><b>注:</b>本例在 Internet Explorer 中无效。</p></body></html>

效果图:

1.gif