我们可以通过 CSS3 中的box-shdow和transform 来实现酷炫的Drop-shadow效果:
下面记录一下是实现步骤。
我们仅仅需要一个div作为主体,阴影可借助伪元素:before和:after来实现。所以我们的 DOM 结构非常简单。
<div class="drop-shadow">drop shadow effect</div>
给两个伪元素添加阴影,暂时先搞定左边,右边的阴影稍后再处理。
.drop-shadow:before, .drop-shadow:after { content: ""; position: absolute; z-index: -1; bottom: 15px; left: 10px; width: 50%; height: 20%; box-shadow: 0 15px 20px rgba(125, 125, 125, 0.8); }
现在,我们看到的是这个样子:
下面我们再通过transform来旋转一下阴影的角度,这样看起来更有立体感。
.drop-shadow:before, .drop-shadow:after { content: ""; position: absolute; z-index: -1; bottom: 15px; left: 10px; width: 50%; height: 20%; box-shadow: 0 15px 20px rgba(125, 125, 125, 0.8); transform: rotate(-5deg); }
这样我们就完成了一边的制作了:
接下来,我们只需要把其中一个阴影挪到右边即可。
.drop-shadow:after { right: 10px; left: auto; transform: rotate(5deg); }
这样,左边的阴影就翻转到了右边,大功告成: