任何方法得到盒影在左和右(水平?)边只有没有黑客或图像。我正在使用:

box-shadow: 0 0 15px 5px rgba(31, 73, 125, 0.8);

但周围都是阴影。

我在元素周围没有边界。


当前回答

如果你想在你的div上面有一个箭头,使用这个:

box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.1);

其他回答

为了在图像的左右两侧或任何其他内容上有一个漂亮的嵌入阴影,可以这样使用它(z-index:-1在显示带有嵌入的图像或内部对象时做了一个很好的技巧):

.shadowcontainer { 显示:inline-flex; 框影:插入-40px 0px 30px -30px rgba(0,0,0,0.9),插入40px 0px 30px -30px rgba(0,0,0,0.9); } .innercontent { z - index: 1 } < div class = " shadowcontainer”> <img src="https://www.google.es/images/srpr/logo11w.png" class="innercontent" style="with:100%"/> < / div >

我不满意Deefour的解决方案中圆形的顶部和底部的阴影,所以创建了我自己的解决方案。

插入盒阴影创建一个漂亮的统一的阴影与顶部和底部切断。

要在元素的两侧使用此效果,请创建两个伪元素:before和:after,它们完全位于原始元素的两侧。

Div:之前,Div:之后{ 内容:“”; 高度:100%; 位置:绝对的; 上图:0; 宽度:15 px; } div:{之前 盒子阴影:-15px 0 15px -15px插入; 左:-15 px; } div:{后 盒子阴影:15px 0 15px -15px插入; 右:-15 px; } div { 背景:继续; 身高:100 px; Margin: 0 50px; 宽度:100 px; 位置:相对; } < div > < / div >


Edit

根据您的设计,您可以使用剪辑路径,如@Luke的回答所示。但是,请注意,在很多情况下,这仍然会导致阴影在顶部和底部逐渐减少,就像你在这个例子中看到的那样:

div { 宽度:100 px; 身高:100 px; 背景:# EEE; Box-shadow: 00 15px 0px #000; 剪辑路径:插入(0px -15px 0px -15px); 位置:相对; Margin: 0 50px; } < div > < / div >

你可以在里面使用一个div来“擦除”阴影:

.yourdiv{
    position:relative;
    width:400px;
    height:400px;
    left:10px;
    top:40px;
    background-color:white;
    box-shadow: 0px 0px 1px 0.5px #5F5F5F;

}
.erase{
    position:absolute;
    width:100%;
    top:50%;
    height:105%;
    transform:translate(0%,-50%);
    background-color:white;
}

你可以使用“高度:%;”和“宽度:%;”来删除你想要的阴影。

这招对我很管用:

box-shadow: 0 5px 5px 0 #000;

这适用于所有浏览器:

-webkit-box-shadow: -7px 0px 10px 0px #000, 7px 0px 10px 0px #000;
-moz-box-shadow: -7px 0px 10px 0px #000, 7px 0px 10px 0px #000;
box-shadow: -7px 0px 10px 0px #000, 7px 0px 10px 0px #000;