如何实现这个效果?我希望我的元素看起来像有一个带阴影的下划线,但我不想在其他三个方向上加阴影。
如何实现这个效果?我希望我的元素看起来像有一个带阴影的下划线,但我不想在其他三个方向上加阴影。
按照以下步骤进行操作:
box-shadow: 0 4px 2px -2px gray;
实际上很简单,无论您将模糊设置为多少(第三个值),都将扩展(第四个值)设置为其相反数。
box-shadow: inset 0 -4px 3px black;
但它也会在侧面生成一些阴影.. :_( - elboletaire0
不需要单位。因此,添加单位是多余的并浪费空间。因此,最好不要添加单位。但是:我经常添加单位以便于在“对象检查器”中轻松更改值……但那更像是一种调试功能……我猜测,如果值为0
,大多数压缩程序都会删除单位。 - Stijn de Witt你可以使用两个元素,一个位于另一个内部,给外部元素设置 overflow: hidden
,并且宽度等于内部元素加上底部填充,这样其他边缘的阴影就会被“切掉”
#outer {
width: 100px;
overflow: hidden;
padding-bottom: 10px;
}
#outer > div {
width: 100px;
height: 100px;
background: orange;
-moz-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
-webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
}
或者,将外部元素浮动以使其缩小为内部元素的大小。参见:http://jsfiddle.net/QJPd5/1/
尝试一下这个。
-moz-box-shadow:0 5px 5px rgba(182, 182, 182, 0.75);
-webkit-box-shadow: 0 5px 5px rgba(182, 182, 182, 0.75);
box-shadow: 0 5px 5px rgba(182, 182, 182, 0.75);
您可以在http://jsfiddle.net/wJ7qp/中查看它。
0 20像素 20像素
对我来说运作良好。 - Meloman尝试这个方法,以便更好地控制盒子阴影效果。
<html>
<head>
<style>
div {
width:300px;
height:100px;
background-color:yellow;
box-shadow: 0 10px black inset,0 -10px red inset, -10px 0 blue inset, 10px 0 green inset;
}
</style>
</head>
<body>
<div>
</div>
</body>
</html>
这同样适用于外部的 box-shadow。
box-shadow: 0 -6px 7px -7px 灰色 inset;
- Jeff Luyet