讲师中心 微信公众号

工具推荐

视频效率加速
剧云
剧云

中文短剧剧本制作平台

Laper
Laper

剧本策划到成片协作

Seko
Seko

AI短剧一键生成成片

updream

一键生成高质量推广成片

css 多个属性同时过渡如何写_通过 transition 组合属性统一控制

落伟小哥_3366

落伟小哥_3366

发布时间:2026-02-10 15:38:02

|

564人浏览过

|

来源于php中文网

原创

transition多个属性必须用逗号分隔,空格会导致仅首项生效;应明确列出需过渡的属性而非all;transition-delay等子属性独立作用于每项声明;display/visibility变化不触发transition。

css 多个属性同时过渡如何写_通过 transition 组合属性统一控制

transition 写多个属性时用逗号分隔,不是空格

很多人误以为 transition 多个属性可以像 margin 那样用空格连写,结果发现只有第一个生效。实际必须用逗号分隔每个过渡声明,否则浏览器只解析第一个,后面全被忽略。

常见错误写法:transition: width 0.3s, height 0.3s, opacity 0.2s; 看起来对?其实没问题——但如果你写成 transition: width 0.3s height 0.3s opacity 0.2s;(中间没逗号),那只有 width 0.3s 被识别,其余直接丢弃。

  • 每个逗号分隔的片段是一个独立的 transition-property transition-duration transition-timing-function transition-delay 组合
  • 可以混用简写和单属性:比如 transition: background-color 0.2s, transform 0.3s ease-out, opacity 0.15s;
  • 未显式声明的子属性(如只写 transform)不会继承其他片段的 duration 或 timing-function,必须各自写全

transition-property 用 all 还是具体属性?性能差别很大

写 transition: all 0.3s; 最省事,但非常危险。它会让所有可动画的 CSS 属性(包括 box-shadow、border-color、甚至 z-index 在某些旧浏览器里)都尝试过渡,不仅可能触发意外视觉变化,还会强制浏览器在每次重绘前做更重的样式计算。

更稳妥的做法是明确列出真正需要过渡的属性:

立即学习“前端免费学习笔记(深入)”;

CSS工具箱(专业版)
CSS工具箱(专业版)

全功能 CSS 工程手册,覆盖性能优化、无障碍、设计系统与跨浏览器兼容。

下载
transition: 
  transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94),
  opacity 0.2s linear,
  background-color 0.25s ease;
  • transform 和 opacity 是 GPU 可加速的,优先选它们做动效
  • width/height/top/left 等会触发布局(layout),导致重排,应避免用于高频动画
  • 如果某属性只是偶尔变化(如 cursor),根本不用加进 transition 列表

transition-delay 对每个属性独立生效

transition-delay 不是全局延迟,而是绑定在每个逗号分隔的过渡声明上。这意味着你可以让不同属性错峰启动,做出层叠动画效果。

例如按钮悬停时,先淡入背景,再平移图标,最后显示文字:

button {
  transition:
    background-color 0.2s 0s,
    transform 0.3s 0.1s,
    color 0.15s 0.25s;
}
  • 第 1 个声明:背景色立即开始(0s 延迟)
  • 第 2 个:transform 等待 0.1 秒再启动
  • 第 3 个:文字颜色要等到 0.25 秒后才过渡
  • 注意:延迟值必须紧跟在对应持续时间之后,顺序不能错

用 transition 的 shorthand 时,遗漏值会回退到初始值

transition 简写语法要求至少指定 property 和 duration,其它三项(timing-function、delay)可省略,但省略后不是“保持上次值”,而是重置为默认:ease 和 0s。

比如你写了:transition: opacity 0.2s, transform 0.3s ease-out; —— 第二项显式写了 ease-out,但第一项没写,那它的 timing function 就是默认的 ease,不是继承第二项的。

  • 不要指望「共享」timing-function 或 delay,每个片段都是独立解析的
  • 如果多个属性需要完全一致的过渡行为,复制粘贴比省略更可靠
  • 调试时可临时加上 transition: all 0.1s linear; 快速验证是否触发了过渡,但上线前务必换回精确列表
实际项目里最容易被忽略的是:**transition 生效的前提是属性值发生了可过渡的变化**。比如从 display: none 切到 block,或者从 visibility: hidden 切到 visible,这些都不会触发 transition——因为它们本身不可动画。得换用 opacity + transform 或配合 transitionend 事件手动控制显示逻辑。

热门AI工具

更多
WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

花生AI
花生AI Hot

一款AI视频创作工具,主要用于B站推出的AI视频创作工具,适合需要提升相关任务效率的用户。

相关专题

更多
function是什么
function是什么

function是函数的意思,是一段具有特定功能的可重复使用的代码块,是程序的基本组成单元之一,可以接受输入参数,执行特定的操作,并返回结果。本专题为大家提供function是什么的相关的文章、下载、课程内容,供大家免费下载体验。

3600

2023.08.04

js函数function用法
js函数function用法

js函数function用法有:1、声明函数;2、调用函数;3、函数参数;4、函数返回值;5、匿名函数;6、函数作为参数;7、函数作用域;8、递归函数。本专题提供js函数function用法的相关文章内容,大家可以免费阅读。

594

2023.10.07

margin在css中是啥意思
margin在css中是啥意思

在CSS中,margin是一个用于设置元素外边距的属性。想了解更多margin的相关内容,可以阅读本专题下面的文章。

877

2023.12.18

html边框设置教程
html边框设置教程

本教程将带你全面掌握HTML/CSS边框设置,从基础的border属性讲起,涵盖所有边框样式、圆角设置及高级技巧,帮助你快速上手实现各种边框效果。

3013

2025.09.02

css3transition
css3transition

css3transition属性用于指定如何从一个CSS样式过渡到另一个CSS样式,本专题为大家提供transition相关的文章、相关下载和相关课程,大家可以免费体验。

1990

2023.06.27

Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

40

2026.11.06

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

20

2026.11.06

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

20

2026.11.06

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

40

2026.11.05

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 1.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn