ie6 不支持fixed的解决方案

本文介绍了两种在Internet Explorer 6浏览器中实现fixed布局的方法。第一种方法通过设置绝对定位来实现,但可能会干扰页面上其他元素的定位。第二种方法通过创建一个相对定位的包裹元素,并将需要fixed定位的元素放置其内,有效避免了第一种方法的问题。

1、按照窗口固定定位

<!--[if IE 6]>
<style type="text/css">
    html{overflow:hidden}
    body{height:100%;overflow:auto}
    #fixed { position: absolute; }
</style>
<![endif]-->

这种办法有个缺陷:会使页面上原有的absolute、relative都变成fixed的效果,根据情况选择使用

2、可以模拟相对margin:0 auto;的元素定位

<!--[if IE 6]>
	   <style type="text/css">
	       html{overflow:hidden}
	       body{height:100%;overflow:auto}
	       #sidebar { position: absolute; }
	       #ie6-wrap { position: relative; height: 100%; overflow: auto; width: 100%; }
	   </style>
<![endif]-->
#sidebar { width: 190px; position: fixed; left: 50%; top: 90px; margin: 0 0 0 280px; }

html代码:

<div id="ie6-wrap">使用它包括绝对定位以外的元素</div>
<div id="sidebar">			
  	<ul>
	    <li><a href="index.html">jQuery (animated)</a></li>
	    <li><a href="css.html">CSS (fixed)</a></li>
	    <li><a href="reveal.html">CSS (reveal)</a></li>
	</ul>
</div>

该种方法解决了1的缺陷。

转载于:https://my.oschina.net/flowers1987/blog/189182

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值