CSS problem with box shadow and floating box
I have two divs floating next to each other, with class name div1 and div2. I use box-shadow to get a nice shadow on both divs. The problem is that I want the shadow from div1 to lay over div2, to get the feeling that div2 is sticking out from behind div1. Now I get the sha开发者_运维知识库dow from div2 to be over div1 instead. Hope you understand my problem. Is it possible to fix this?
<div class="div1"></div>
<div class="div2"></div>
This is the css:
.div1 {
float: left;
box-shadow: 0px 0px 80px #A0A0A0;
-webkit-box-shadow: 0px 0px 80px #A0A0A0;
-moz-box-shadow: 0px 0px 80px #A0A0A0;
}
.div2 {
float: left;
box-shadow: 0px 0px 80px #A0A0A0;
-webkit-box-shadow: 0px 0px 80px #A0A0A0;
-moz-box-shadow: 0px 0px 80px #A0A0A0;
}
You need to give both of the a background color - elements are transparent by default, thus causing their shadows to "stick out" behind each other. To lay them over each other, simply use the z-index
CSS property.
.div1 {
z-index: 99;
}
.div2 {
z-index: 100;
}
div {
float: left;
width: 100px;
height: 100px;
border: 1px solid #999;
background-color: white;
margin-right: 5px;
-webkit-box-shadow: 0px 0px 80px #A0A0A0;
-moz-box-shadow: 0px 0px 80px #A0A0A0;
box-shadow: 0px 0px 80px #A0A0A0;
}
See: http://www.jsfiddle.net/wspDP/4/
<style>
.container{
position:relative;
}
.div1 {
z-index:80;
width:500px;
height:500px;
float: left;
box-shadow: 0px 0px 80px #A0A0A0;
-webkit-box-shadow: 0px 0px 80px #aaa;
-moz-box-shadow: 0px 0px 80px #A0A0A0;
}
.div2 {
z-index:-10;
position:absolute;
width:500px;
height:500px;
float: left;
left:560px;
top:30px;
box-shadow: 0px 0px 80px #A0A0A0;
-webkit-box-shadow: 0px 0px 80px #333;
-moz-box-shadow: 0px 0px 80px #A0A0A0;
}
</style>
<div class="container">
<div class="div1">asdf </div>
<div class="div2">asd asdf</div>
</div>
z-index higher mean that div will be on top, so you can adjust as per the need, but to give exact feeling , you may need to play with colors , dark shadow vs light shadow.
精彩评论