本文详解如何实现按钮悬停时仅自身发生位移(如 translate(-5px, -5px)),而背景阴影视觉上"静止不动"的效果------核心在于同步调整 box-shadow 偏移量以抵消按钮位移带来的视觉偏移,并配合 transition: all 实现平滑动画。 本文详解如何实现按钮悬停时仅自身发生位移(如 translate(-5px, -5px)),而背景阴影视觉上"静止不动"的效果------核心在于同步调整 box-shadow 偏移量以抵消按钮位移带来的视觉偏移,并配合 transition: all 实现平滑动画。在 CSS 动画设计中,一个常见误区是:仅对 transform 设置过渡,却忽略 box-shadow 本身也是可动画的属性。当按钮使用 transform: translate(-5px, -5px) 悬停时,元素整体(含阴影)会向左上移动,导致阴影"跟着动",破坏了"阴影固定、按钮浮起"的拟物化视觉预期。要达成"阴影锚定、按钮上浮"的效果,关键原理是:视觉上阴影位置不变 ? 按钮位移量 + 阴影偏移量 = 恒定值。原始状态:box-shadow: 6px 6px ...(右下偏移 6px)按钮悬停位移:translate(-5px, -5px)(向左上移动 5px)为抵消该位移对阴影位置的影响,需将阴影偏移量增加 +5px 在 x 和 y 方向 → 新阴影应为 11px 11px(即 6 + 5)。同时,必须将 transition 从 transform 0.3s ease 改为 all 0.3s ease(或显式声明 transition: transform 0.3s ease, box-shadow 0.3s ease),否则 box-shadow 变化将无过渡,出现突兀跳变。以下是优化后的完整代码示例: 有道翻译AI助手 有道翻译提供即时免费的中文、英语、日语、韩语、法语、德语、俄语、西班牙语、葡萄牙语、越南语、印尼语、意大利语、荷兰语、泰语全文翻译、网页翻译、文档翻译、PDF翻
相关推荐
2401_831419445 分钟前
JavaScript 中实现基于分组的前端产品筛选功能曲幽6 分钟前
初探:用 FastAPI 搭建你的第一个 AI Agent 接口yexuhgu10 分钟前
CSS实现盒子阴影扩散效果_调整box-shadow的模糊半径Jetev13 分钟前
CSS如何实现优雅的间距_使用CSS Grid控制盒模型间隙qq_4142565713 分钟前
HTML函数开发需要独立显卡吗_HTML函数与显卡关系详解【说明】lichenyang45313 分钟前
用 Python 做一个简单的文本对比工具CN.LG14 分钟前
Mysql5.1.41+SQLyog的详细安装教程lichenyang45314 分钟前
用 Python 批量筛选 Excel 数据并标黄:从 5.8.txt 到 xlsx 自动标注qq_3926906616 分钟前
CSS如何利用-disabled伪类禁用交互元素_通过灰度效果提升界面逻辑清晰度hunteritself16 分钟前
GPT Image2 + Seedance 2.0:3 小时从剧本到 AI 互动影游,深度实测复盘