您希望 box-shadow 随容器的宽度或容器的高度缩放吗?你不能真正指定阴影的高度和宽度,只能指定一个传播。因此,如果您的容器宽度缩小了 10% 但高度没有缩小,那么您的阴影将缩小 10%(如果可能的话),即您的阴影的高度会缩放,即使它可能不应该缩放。
如果您希望 box-shadow 在高度和宽度方面实际正确缩放,则必须创建多个阴影 - 一个用于高度,一个用于宽度。
但是,您将永远无法缩放实际的阴影,只能缩放阴影的容器。所以你会在你的主容器中创建一个容器,然后给它负边距并附加盒子阴影。但是,您很快就会注意到,当您缩小容器时,您的阴影实际上是在增长而不是缩小。
在不使用媒体查询或 jQuery 的情况下尝试扩展无法扩展的东西似乎有点矫枉过正。
但是,如果您正在寻找可扩展的边框,即没有模糊的框阴影:P,那么不要再看了:
http://jsfiddle.net/925r2/3/
<style>
* {
margin: 0;
padding: 0;
border: 0;
box-sizing: border-box;
}
.wrapper {
position: relative;
margin: 100px auto 0;
width: 80%; /* .content width */
height: 400px; /* .content height */
}
.content {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: #fff; /* .content background */
}
.shadow {
position: absolute;
top: -10%; /* .content shadow top height */
right: -5%; /* .content shadow right width */
bottom: -10%; /* .content shadow bottom height */
left: -5%; /* .content shadow left width */
background: #000; /* .content shadow, unfortuntely no blur effect */
}
</style>
<div class="wrapper">
<div class="shadow"></div>
<div class="content">This is your content</div>
</div>