CSS3-过渡

一. CSS3过渡介绍

在 CSS3 之前,我们要向在页面上显示一个动画效果:

① 通过 Flash 动画的方式

② 通过 JavaScript 来实现

在css3有了过渡这个概念,当一个元素从一种样式变换为另一种样式时为元素添加效果。

二. 浏览器支持

w3shool.com.cn 上我们通过查看css3过渡介绍中就可以看到支持哪些浏览器

这里写图片描述

三. 过渡属性

属性描述
transition-property规定应用过渡的 CSS 属性的名称。默认值 all
transition-duration定义过渡效果效果花费的时间。默认是 0。
transition-timing-function规定过渡效果的时间曲线。默认是”ease”。
transition-delay规定过渡效果何时开始。默认是 0。
transition简写属性,可以同时设置上面四个属性值。

3.1 transition-property属性介绍

/*给width设置过渡效果*/
div {
    transition-property:width;
}
描述
none没有属性会获得过渡效果。
all所有属性都将获得过渡效果。默认值
property定义哪个属性有过渡效果。例如:width, height

3.2 transition-duration属性介绍

/*设置过渡时长3s*/
div {
    transition-duration:3s;
}
描述
time规定完成过渡效果需要花费的时间。默认值是 0,意味着没有效果。

3.3 transition-timing-function属性介绍

/*匀速执行过渡效果*/
div {
    transition-timing-function: linear;
}
描述
linear规定以相同速度开始至结束的过渡效果(等于cubic-bezier(0,0,1,1))。
ease规定慢速开始,逐渐变快,然后慢速结束的过渡效果(cubic-bezier(0.25,0.1,0.25,0.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 之间的值。

3.4 transition-delay属性介绍

/*过渡效果在开始1秒后执行*/
div {
    transition-delay:1s;
}
描述
time规定在过渡效果开始之前需要等待的时间。

3.5 transition属性介绍

/*transition: property duration timing-function delay*/
div {
    transition: width 1s linear 0.1s;
}
描述
transition-property规定设置过渡效果的 CSS 属性。
transition-duration规定过渡效果的执行时长。
transition-timing-function规定过渡效果的速度曲线。
transition-delay规定过渡效果何时开始。

四. 示例

鼠标放在盒子上,让盒子宽度发生变化

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>过渡动画</title>
    <style>

        .div {
            /*盒子宽度为浏览器当前宽度的40%*/
            width: 40%;
            /*高度为固定200px*/
            height: 200px;
            /*行高为200px 设置行高,是让文字垂直居中*/
            line-height: 200px;
            /*文本水平居中*/
            text-align: center;
            /*背景颜色为红色*/
            background-color: red;

            /*设置过渡,过渡是在样式发生改变的时候执行*/
            transition: 2s width linear  0.1s;
        }

        /*鼠标放在盒子上的是后,改变样式,样式此时发生了改变,执行过渡效果*/
        .div:hover {
            width: 20%;
        }

    </style>
<body>
    <div class="div">盒子</div>
</body>
</html>

执行效果

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值