box-shadow属性通过设置水平偏移、垂直偏移、模糊半径、扩散半径、颜色和inset实现元素阴影效果,常用于按钮悬浮、卡片立体化和内凹设计,合理调整参数可提升界面层次感与交互真实感。
在CSS中,box-shadow 属性是美化按钮、卡片等元素非常实用的工具。它能为元素添加阴影效果,增强立体感和视觉层次,让界面看起来更生动、专业。
box-shadow 的基本语法如下:
box-shadow: 水平偏移 垂直偏移 模糊半径 扩散半径 颜色 inset(可选);每一项含义如下:
给按钮添加轻微阴影,可以让其看起来“浮起”,提升点击欲望。
button {
background-color: #007bff;
color: white;
border: none;
padding: 10px 20px;
border-radius: 6px;
cursor: pointer;
box-shadow: 0 2px 5px rgba(0,0,0,0.2);
transition: box-shadow 0.3s ease;
}
button:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.3);
}
说明:默认阴影较轻,悬停时加深,模拟“按下”或“浮起”效果,搭配 transition 更自然。
卡片常用于展示内容模块,合适的阴影能让其从背景中“跳出来”。
.card {
background: white;
border-radius: 12px;
padding: 20px;
margin: 20px;
box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
这种设置适合信息类卡片,阴影柔和不抢眼。若想强调层级,可叠加多个阴影:
box-shadow: 0 2px 4px rgba(0,0,0,0.1), 0 8px 16px rgba(0,0,0,0.1);
多层阴影模*实光照,视觉效果更丰富。
使用 inset 可创建内阴影,适合设计“按入”式按钮或装饰性边框。
.input-box {
border: none;
padding: 12px;
border-radius: 8px;
box-shadow: inset 0 2px 4px rgba(0,
0,0,0.1);
}
内阴影让输入框看起来略有凹陷,提升交互真实感。
基本上就这些。合理使用 box-shadow 能显著提升UI质感,关键是控制透明度和模糊度,避免过度夸张。试试从 0 2px 5px rgba(0,0,0,0.1) 开始,逐步调整到满意效果。