任何方法都可以在没有黑客或图像的情况下在左右(水平?)两侧获得盒子阴影。我在用:
box-shadow: 0 0 15px 5px rgba(31, 73, 125, 0.8);
但它给周围的阴影。
我没有围绕元素的边界。
注意: 我建议在下面查看答案;它不涉及此处描述的解决方案中不完美的“掩蔽”。
我对 Deefour 解决方案中阴影的圆形顶部和底部不满意,因此创建了我自己的解决方案。
inset box-shadow创建一个很好的均匀阴影,顶部和底部被切断。
inset
box-shadow
要在元素的侧面使用此效果,请创建两个伪元素:before并:after绝对定位在原始元素的侧面。
:before
:after
div:before, div:after { content: " "; height: 100%; position: absolute; top: 0; width: 15px; } div:before { box-shadow: -15px 0 15px -15px inset; left: -15px; } div:after { box-shadow: 15px 0 15px -15px inset; right: -15px; } div { background: #EEEEEE; height: 100px; margin: 0 50px; width: 100px; position: relative; } <div></div>
你可以接近多个盒子阴影;每边一个
box-shadow: 12px 0 15px -4px rgba(31, 73, 125, 0.8), -12px 0 8px -4px rgba(31, 73, 125, 0.8);
http://jsfiddle.net/YJDdp/
编辑
再为顶部和底部添加 2 个盒子阴影,以掩盖渗出的阴影。
box-shadow: 0 9px 0px 0px white, 0 -9px 0px 0px white, 12px 0 15px -4px rgba(31, 73, 125, 0.8), -12px 0 15px -4px rgba(31, 73, 125, 0.8);
http://jsfiddle.net/LE6Lz/