css3边框阴影border-shadow有什么作用?

html-css012

css3边框阴影border-shadow有什么作用?,第1张

设置边框阴影不会影响盒子的布局,即不会影响其兄弟元素的布局

spread可以与blur、h-shadow、v-shadow相互抵消,blur不可为负值

可以设置多重边框阴影,实现更好的效果,增强立体感。by三人行慕课

最近写一个四周加阴影的项目用到了box-shadow属性,感觉项目里面好多地方都会用到这个属性,于是就专门整理了一下。

语法:

注意:boxShadow 属性把一个或多个下拉阴影添加到框上。该属性是一个用逗号分隔阴影的列表,每个阴影由 2-4 个长度值、一个可选的颜色值和一个可选的 inset 关键字来规定。省略长度的值是 0。

为了更清楚的了解box-shadow,做几个demo来给大家演示一下效果:

h-shadow代表的是阴影的水平位置偏移量,可以是正负值

即在x轴的阴影位置,正值阴影出现在右边,负值阴影出现在左边

v-shadow代表垂直阴影位置,即在y轴的阴影位置,可以是正负值

当v-shadow的正值时阴影出现在下面,当v-shadow的负值时阴影出现在上面

blur阴影的模糊距离,这使得阴影部分的过渡看起来更加柔和

spread代表阴影的大小,也是最后一个长度值代表阴影的尺寸。到这里大家心中是不是对blur和spread 产生疑问,其实blur是用于描述模糊半径,它的取值决定了阴影的模糊程度;而spread表示阴影所占区域的大小。

color阴影的颜色值,可以用任何颜色单位的来表示。当我们没有设置颜色值,默认是黑色

默认情况下,设置的阴影都是外部阴影,inset的作用是将外部阴影转换成内部阴影

附:

属性定义及使用说明:

box-shadow属性可以设置一个或多个下拉阴影的框。

兼容性:

text-shadow是给文本添加阴影效果,box-shadow是给元素块添加周边阴影效果。随着html5和CSS3的普及,这一特殊效果使用越来越普遍。

基本语法是{box-shadow:[inset] x-offset y-offset blur-radius spread-radiuscolor}

对象选择器 {box-shadow:[投影方式] X轴偏移量 Y轴偏移量阴影模糊半径 阴影扩展半径 阴影颜色}

box-shadow属性的参数设置取值:

阴影类型:此参数可选。如不设值,默认投影方式是外阴影;如取其唯一值“inset”,其投影为内阴影;

X-offset:阴影水平偏移量,其值可以是正负值。如果值为正值,则阴影在对象的右边,其值为负值时,阴影在对象的左边;

Y-offset:阴影垂直偏移量,其值也可以是正负值。如果为正值,阴影在对象的底部,其值为负值时,阴影在对象的顶部;

阴影模糊半径:此参数可选,,但其值只能是为正值,如果其值为0时,表示阴影不具有模糊效果,其值越大阴影的边缘就越模糊;

阴影扩展半径:此参数可选,其值可以是正负值,如果值为正,则整个阴影都延展扩大,反之值为负值时,则缩小;

阴影颜色:此参数可选。如不设定颜色,浏览器会取默认色,但各浏览器默认取色不一致,特别是在webkit内核下的safari和chrome浏览器下表现为透明色,在Firefox/Opera下表现为黑色(已验证),建议不要省略此参数。

为了兼容各主流浏览器并支持这些主流浏览器的较低版本,在基于Webkit的Chrome和Safari等浏览器上使用box-shadow属性时,我们需要将属性的名称写成-webkit-box-shadow的形式。Firefox浏览器则需要写成-moz-box-shadow的形式。