ie 6/7 下相对定位层(relative)挡在绝对定位层(absolute)上面的解决方法

感谢原创 http://hi.baidu.com/shiryu963/home ^_^

 

在用js做下拉菜单的时候,如果下面的div用的相对定位(relative)它就会挡住下拉菜单,示例代码:


 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>AspectGaming lottery system_home_terms</title>

<style type="text/css">
ul{ list-style:none; margin:0; padding:0;}
ul li{ list-style:none;}
#nav{width:600px; height:40px; border:1px red solid; }
#nav li{ float:left; width:150px; position:relative;}

ul#nav li a {display:block;height:34px;  border:1px #ccc solid;}

ul#memus { width:150px;height:0;overflow:hidden; position: absolute; z-index:1000; border:1px #09C solid;}
.temp{ width:600px; height:60px;background-color:#F93; position:relative;}
.temp p{ position:absolute; background-color: #69C;}
.bo{width:600px; height:60px;background-color:#969;}
</style>
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
$(function(){
$(".sys-link").click(function(){                  
if($("#memus").height()==0){  
$("#memus").animate({height: '208px'}, 500);
}else{
$("#memus").animate({height: '0px'}, 500);
}                                             
});
});
</script>
</head>

<body>
<div id="container" class="container">
<ul id="nav">
<li><a href="#" class="home-link">Home</a></li>
<li class="sys">
<a href="#" class="sys-link">System Management</a>

<ul id="memus" class="">
<li class="select"><a href="#">Chains</a></li>
<li class="select"><a href="#">Retailers</a></li>
<li class="select"><a href="#">Games</a></li>
<li class="select"><a href="#">Machines</a></li>
<li class="select"><a href="#">Drawings</a></li>
<li class="select"><a href="#">Tickets</a></li>
<li class="select"><a href="#">User Access</a></li>
<li class="select"><a href="#">Reports</a></li>
</ul>

</li> 
</ul> 
<div class="temp">
<p>ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss </p>
</div>
<div class="bo"></div>
</div>
</body>
</html>


解决方法:
在下拉菜单的ul外加一层div,ul进行相对定位,div进行绝对定位和z-index,在最外层的li上加上z-index
<li>
<div><ul>...</ul></div>
</li>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>AspectGaming lottery system_home_terms</title>

<style type="text/css">
ul{ list-style:none; margin:0; padding:0;}
ul li{ list-style:none;}
#nav{width:600px; height:40px; border:1px red solid; }
#nav li{ float:left; width:150px; position:relative;}
.sys{ z-index:8;}
ul#nav li a {display:block;height:34px;  border:1px #ccc solid;}
#memuswrap{position:absolute;top:34px;left:0;z-index:20000!important; }
ul#memus { width:150px;height:0;overflow:hidden; position:relative; border:1px #09C solid;}
.temp{ width:600px; height:60px;background-color:#F93; position:relative;}
.temp p{ position:absolute; background-color: #69C;}
.bo{width:600px; height:60px;background-color:#969;}
</style>

<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
$(function(){
$(".sys-link").click(function(){                  
if($("#memus").height()==0){  
$("#memus").animate({height: '208px'}, 500);
}else{
$("#memus").animate({height: '0px'}, 500);
}                                             
});
});
</script>

</head>

<body>
<div id="container" class="container">
<ul id="nav">
<li><a href="#" class="home-link">Home</a></li>
<li class="sys">
<a href="#" class="sys-link">System Management</a>
          <div id="memuswrap">
<ul id="memus" class="">
<li class="select"><a href="#">Chains</a></li>
<li class="select"><a href="#">Retailers</a></li>
<li class="select"><a href="#">Games</a></li>
<li class="select"><a href="#">Machines</a></li>
<li class="select"><a href="#">Drawings</a></li>
<li class="select"><a href="#">Tickets</a></li>
<li class="select"><a href="#">User Access</a></li>
<li class="select"><a href="#">Reports</a></li>
</ul>
        </div>
</li> 
</ul> 
<div class="temp">
<p>ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss </p>
</div>
<div class="bo"></div>
</div>
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值