工具说明
CSS 的 `box-shadow` 给元素添加投影,是营造层次感、立体感和悬浮效果的关键。但它的参数顺序——水平偏移、垂直偏移、模糊半径、扩散半径、颜色、是否内阴影——靠记忆手写很容易出错。这个生成器让你拖动滑块直观调每个参数,实时预览阴影,再把代码复制走。
`box-shadow` 的值依次是:`offset-x`(水平偏移,正值向右)、`offset-y`(垂直偏移,正值向下)、`blur-radius`(模糊半径,越大越柔和)、`spread-radius`(扩散半径,正值放大阴影)、`color`(颜色,常带透明度)、可选的 `inset`(让阴影出现在元素内部)。多个阴影可用逗号叠加,做出更细腻的多层效果。全部在浏览器本地生成标准 CSS。
使用步骤
- 用滑块设置水平偏移(offset-x)和垂直偏移(offset-y),决定阴影投向哪个方向。
- 调模糊半径(blur)让阴影边缘更柔和或更锐利。
- 调扩散半径(spread)放大或收缩整片阴影。
- 选阴影颜色并设置透明度,真实的阴影通常是半透明的黑色或深色。
- 需要内陷效果就勾选 `inset`;需要多层就再加一条阴影叠加。
- 在预览区确认效果,复制生成的 `box-shadow` 代码到样式表。
适用场景
- 给卡片、弹窗、按钮加投影,做出悬浮和层级感。
- 设计 Material Design 风格的"海拔"层次(不同深度对应不同阴影)。
- 用 `inset` 内阴影做凹陷的输入框、开关或按下态。
- 叠加多层阴影做出柔和真实的环境光投影。
- 快速试出恰到好处的阴影参数,避免反复手改 CSS 刷新。
常见问题
box-shadow 的几个数字分别是什么?
顺序是:水平偏移、垂直偏移、模糊半径、扩散半径,后面跟颜色。例如 `4px 6px 12px 0 rgba(0,0,0,.2)` 表示向右 4px、向下 6px、模糊 12px、不扩散、20% 透明的黑色阴影。模糊和扩散可以省略,默认为 0。
inset 是做什么的?
加上 `inset` 关键字后,阴影会画在元素内部而不是外部,产生凹陷/内嵌的视觉效果,常用于输入框聚焦态、按下的按钮或开关凹槽。不加 inset 就是默认的外投影。
怎么做出柔和自然的阴影?
诀窍是:用半透明颜色(如 `rgba(0,0,0,0.15)`)而非纯黑,偏移量不要太大,模糊半径给足。真实的阴影往往是多层叠加——一层近而锐、一层远而散——本工具支持叠加多条阴影来实现这种效果。
阴影会撑大元素或影响布局吗?
不会。box-shadow 不占布局空间,不会改变元素盒模型尺寸,也不会挤动相邻元素——这点和 border 不同。但视觉上阴影可能溢出父容器,必要时注意父级的 overflow 设置。