CSS 视觉效果属性
视觉效果属性用于控制元素的视觉呈现,包括透明度、阴影、滤镜、混合模式等。这些属性让你能够创建丰富的视觉效果,提升页面的视觉吸引力和用户体验。
该类属性解决什么问题
视觉效果属性主要解决以下问题:
- 视觉层次:通过阴影、透明度等创建视觉层次感
- 装饰效果:为元素添加装饰性的视觉效果
- 图像处理:使用滤镜处理图片和背景
- 混合效果:通过混合模式创建特殊的混合效果
- 视觉反馈:通过视觉效果提供交互反馈
核心属性介绍
透明度属性
opacity
设置元素的不透明度。
.element {
opacity: 1; /* 完全不透明(默认) */
opacity: 0.5; /* 50% 透明 */
opacity: 0; /* 完全透明(不可见) */
}
特点:
- 值范围:0(透明)到 1(不透明)
- 影响元素及其所有子元素
- 元素仍然占据空间
visibility
设置元素的可见性。
.element {
visibility: visible; /* 可见(默认) */
visibility: hidden; /* 隐藏(仍占据空间) */
visibility: collapse; /* 折叠(用于表格) */
}
与 display: none 的区别:
visibility: hidden:元素隐藏但仍占据空间display: none:元素隐藏且不占据空间
阴影属性
box-shadow
设置元素的盒子阴影。
.element {
box-shadow: 2px 2px 4px rgba(0,0,0,0.3);
/* 语法:x偏移 y偏移 模糊半径 扩散半径 颜色 */
}
/* 多个阴影 */
.element {
box-shadow:
0 2px 4px rgba(0,0,0,0.1),
0 4px 8px rgba(0,0,0,0.1);
}
/* 内阴影 */
.element {
box-shadow: inset 2px 2px 4px rgba(0,0,0,0.3);
}