box-shadow
属性用于在元素的框架上添加阴影效果。 你可以在同一个元素上设置多个阴影效果,并用 逗号 将他们分隔开。 该属性可设置的值包括阴影的X轴偏移量
、Y轴偏移量
、模糊半径
、扩散半径
和颜色
。
box-shadow: [inset] <offset-x> <offset-y> [<blur-radius>] [<spread-radius>] color [,]
/* x偏移量 | y偏移量 | 阴影颜色 */
box-shadow: 60px -16px teal;
/* x偏移量 | y偏移量 | 阴影模糊半径 | 阴影颜色 */
box-shadow: 10px 5px 5px black;
/* x偏移量 | y偏移量 | 阴影模糊半径 | 阴影扩散半径 | 阴影颜色 */
box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.2);
/* 插页(阴影向内) | x偏移量 | y偏移量 | 阴影颜色 */
box-shadow: inset 5em 1em gold;
/* 任意数量的阴影,以逗号分隔 */
box-shadow: 3px 3px red, -1em 0 0.4em olive;
/* 全局关键字 */
box-shadow: inherit;
box-shadow: initial;
box-shadow: unset;
规则:(当给出两个、三个或四个值时)
- 如果只给出两个值, 那么这两个值将会被当作
<offset-x>
<offset-y>
来解释。 <offset-x>
设置水平偏移量,正值阴影则位于元素右边,负值阴影则位于元素左边<offset-y>
设置垂直偏移量,正值阴影则位于元素下方,负值阴影则位于元素上方- 如果给出了第三个值, 那么第三个值将会被当作
<blur-radius>
解释。 - 值越大,模糊面积越大,阴影越大越淡。不能为负值。
- 如果给出了第四个值, 那么第四个值将会被当作
<spread-radius>
解释。 - 取正值时,阴影扩大;取负值时,阴影收缩。默认为0,此时阴影与元素同样大。需要考虑 inset。
- 可选,
inset
关键字。默认阴影在边框外,即阴影向外扩散。 - 使用
inset
关键字 会使得阴影落在盒子内部。 此时阴影会在边框之内 、背景之上、内容之下。 - 可选,
<color>
值。