CSS过渡transition

1 过渡属性transition-property

transition-property属性用于指定应用过渡效果的CSS属性的名称。

属性描述
none没有过渡效果
all所有属性都可以获得过渡效果
property指定采用过渡效果的属性名,若是多个属性用逗号隔开

2 过渡时间transition-duration

transition-duration属性:指定过渡效果花费的时间,默认值为0,单位是秒(s)或毫秒(ms)。

格式为:

transition-duration: time;

3 速度曲线transition-timing-function

transition-timing-function属性:设置过渡效果的速度曲线,默认值为“ease”。

格式为:

transition-timing-function:linear|ease|ease-in|ease-out|ease-in-out|cubic-bezier(n,n,n,n);
属性含义
linear线性过渡,相同速度开始至结束的过渡效果。等同于贝塞尔曲线(0.0, 0.0, 1.0, 1.0)
ease:默认值,平滑过渡,以慢速开始,然后加快,最后慢慢结束。等同于贝塞尔曲线(0.25, 0.1, 0.25, 1.0)
ease-in:由慢到快。等同于贝塞尔曲线(0.42, 0, 1.0, 1.0)
ease-out由快到慢。等同于贝塞尔曲线(0, 0, 0.58, 1.0)
ease-in-out由慢到快再到慢。等同于贝塞尔曲线(0.42, 0, 0.58, 1.0)
cubic-bezier(n, n, n, n)特定的贝塞尔曲线类型,定义用于加速或者减速的贝塞尔曲线的形状,4个数值需在[0, 1]区间内

4 延迟时间transition-delay

transition-delay属性:表示对象过渡的延迟时间(过渡效果的开始时间),默认值为0,单位是秒(s)或毫秒(ms)。
正数:过渡动作会延迟触发。
负数:过渡动作会从该时间点开始,之前的动作被截断。

格式为:

transition-delay:time;

5 综合属性transition

transition属性是一个复合属性,用于在一个属性中设置transition-property、transition-duration、transition-timing-function、transition-delay四个过渡属性。

格式为:

transition:property duration timing-function delay;

注意:使用transition属性设置多个过渡效果时,它的各个参数必须按照顺序进行定义,不能颠倒。如果使用transition简写属性设置多种过渡效果,需要为每个过渡属性集中指定所有的值,并且使用逗号进行分隔。

6 实例

例如,.html文件中代码如下:

<div class="d1">橘猫吃不胖</div>

CSS样式如下:

.d1 {
    /* 设置初始盒子宽200像素,高200像素 */
    width: 200px;
    height: 200px;
    /* 设置边框为1像素,实线,红色 */
    border: 1px solid red;
}
.d1:hover {
    /* 设置过渡的属性,背景色,边框颜色,文字颜色 */
    transition-property: background-color, border-color, color;
    /* 设置过渡的时间为3秒 */
    transition-duration: 3s;
    /* 设置过渡速度曲线,由快到慢 */
    transition-timing-function: ease-out;
    /* 设置过渡延迟时间1秒 */
    transition-delay: 1s;
    /* 盒子边框颜色过渡为黑色 */
    border-color: black;
    /* 背景颜色设置成粉色 */
    background-color: orange;
    /* 文字颜色是橙色 */
    color: white;
}

过渡前,效果如下:
在这里插入图片描述
当鼠标移动到该div上后,1秒(已经设置好的延迟时间),会改变成如下效果:
在这里插入图片描述
或者用transition同时设置多个属性进行过渡,效果相同,CSS样式如下:

.d1 {
    /* 设置初始盒子宽200像素,高200像素 */
    width: 200px;
    height: 200px;
    /* 设置边框为1像素,实线,红色 */
    border: 1px solid red;
}
.d1:hover {
    /* 总体设置过渡属性、时间、速度曲线、延迟时间 */
    transition: background-color 3s ease-out 1s, color 3s ease-out 1s, border-color 3s ease-out 1s;
    /* 盒子边框颜色过渡为黑色 */
    border-color: black;
    /* 背景颜色设置成粉色 */
    background-color: orange;
    /* 文字颜色是橙色 */
    color: white;
}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值