box-shadow属性四个值_css中的boxshadow属性详解

相信大家对于box-shadow这个属性都应该很清楚,那就是给元素添加阴影的,今天我们就来详细的说一下这个属性。

首先来看语法:

box-shadow: h-shadow v-shadow blur spread color inset;

说明

h-shadow

必需的。水平阴影的位置。允许负值

v-shadow

必需的。垂直阴影的位置。允许负值

blur

可选。模糊距离

spread

可选。阴影的大小

color

可选。阴影的颜色。在CSS颜色值寻找颜色值的完整列表

inset

可选。从外层的阴影(开始时)改变阴影内侧阴影

box-shadow最少为两个参数:即h-shadow和v-shadow,大家可以理解为x和y轴的概念。

向元素添加单个 box-shadow 效果时使用以下规则:

  • 当给出两个、三个或四个 值时。

    • 如果只给出两个值, 那么这两个值将会被当作 来解释。

    • 如果给出了第三个值, 那么第三个值将会被当作解释。

    • 如果给出了第四个值, 那么第四个值将会被当作来解释。

  • 可选,inset关键字。

  • 可选,值。

完整顺序

 = inset? && {2,4} && ?

属性实例讲解

img{box-shadow:10px 10px}

e4c75ed6a0bd70a5d8cfa268e0fa8cf8.png

这里只设置了必须的两个参数,设置阴影为10px,没有背景色则默认为黑色,注意这两个参数如果设置为负数,则是相反的方向出现阴影,如下:

img{box-shadow:-10px,-10px}

8ec60e30dc38a255be8ab22cafb60da0.png

blur参数

此参数用来设置模糊距离,不能为负数。

img{box-shadow:-10px -10px 20px;}//设置blur为20px

115ef65098e2e0238aecf83fd64ba5bf.png

spread参数

此参数用来设置阴影的大小。

img{box-shadow:-10px -10px 20px 20px;}

131ab9280e01b30b9ca06f6164a63114.png

color参数

此参数设置阴影的颜色。

img{box-shadow:-10px -10px 20px 20px gold;}

7dc76ab37326a3dd5ca3dce62408453b.png

inset参数

此参数设置阴影向内。

div{box-shadow:-10px -10px 20px 20px gold inset;}

注意内阴影对图片无效的,所以我用div代替。

d29b612e52fde3d27357907d111733b7.png

实战

1.如果想要全部边缘都要阴影元素,直接把x和y设置为0即可。

div{box-shadow:0px 0px 20px 10px green;}

730022381ad0e3de854030cc297a5f50.png

2.一个元素可应用多个阴影效果。

div{box-shadow:10px 10px 10px red,-10px -10px 10px green;}

881e3aae6452ec40afb9cf7716b0621f.png

3.镂空效果

html

<div class="shadow"><img src="http://www.sammh.com/dome/upload1/4921320615863570240730.jpeg"/><div class="mark"><i>i>div>div>

css

.shadow{overflow: hidden;position: relative;width:400px;}img{width:400px;}.mark{position: absolute;left: 0;right: 0;top: 0;bottom: 0;}.mark i{position: absolute;left: 50%;transform: translateX(-50%);top: 60px;border-radius: 100%;width: 100px;height: 100px;box-shadow: 0 0 0 1000px rgba(0, 0, 0, 0.4);}

效果:

3d4a20a3bc585289e060224420043317.png

在线代码:https://codepen.io/jack-shangs/pen/mdVvOMz

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值