首页技术文章正文

transition-timing-function属性值有哪些?怎么使用?

更新时间:2021-11-01 来源:黑马程序员 浏览量:

transition-timing-function属性规定过渡效果的速度曲线,默认值为"ease",其基本语法格式如下。

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

从上述语法可以看出,transition-timing-function属性的取值有很多,常见属性值及说明如下所示。


transition-timing-function属性值

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):定义用于加速或者减速的贝赛尔曲线的形状,它们的值在0~1

下面通过一个案例来演示transition-timing-function属性的用法,如下所示:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>transition-timing-function</title>
    <style>
        div {
            width: 200px;
            height: 200px;
            margin: 0 auto;
            background-color: yellow;
            border: 5px solid red;
            border-radius: 0px;
        }
        div:hover {
            border-radius: 105px;

            /* 指定动画过渡的CSS属性 */
            transition-property: border-radius;
            -webkit-transition-property: border-radius;
            -moz-transition-property: border-radius;
            -o-transition-property: border-radius;

            /* 指定动画过渡时间 */
            transition-duration: 3s;
            -webkit-transition-duration: 3s;
            -moz-transition-duration: 3s;
            -o-transition-duration: 3s;

            /* 指定动画慢速开始和结束的过渡效果 */
            transition-timing-function: ease-in-out;
            -webkit-transition-timing-function: ease-in-out;
            -moz-transition-timing-function: ease-in-out;
            -o-transition-timing-function: ease-in-out;
        }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

上面的案例中,通过transition-property属性指定产生过渡效果的CSS属性为“border-radius”,并指定过渡动画由正方形变为正圆形。然后使用transition-duration属性定义过渡效果需要花费5秒的时间,同时使用transition-timing-function属性规定过渡效果以慢速开始和结束。

代码运行,当鼠标指针悬浮到网页中的<div>区域时,过渡的动作将会被触发,正方形将慢速开始变化,然后逐渐加速,随后慢速变为正圆形,效果如图所示。

1635749353701_transition-timing-function.gif



猜你喜欢

css3渐变属性有哪些?css3渐变属性用法详解

css3属性选择器有哪些?css3属性选择器介绍

CSS怎样更换鼠标样式?

transition-property属性有几个属性值?

黑马程序员HTML&JS+前端课程

分享到:
在线咨询 我要报名
和我们在线交谈!