您的位置:首页 > Web前端 > CSS

【css】css 解决 ie6 下 position:fixed 失效

2012-12-05 17:05 127 查看
对于 ie6 不支持 position:fixed,我们通常会利用 css 的 expression 方式来解决。下面我将介绍另外种方法,没有 expression,有的只是一些 css hack。

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>css解决ie6下position:fixed失效</title>
<link rel="stylesheet" type="text/css" href="css/base.css" media="all"/>
<style type="text/css">
.wrapper{width:960px;margin-left:auto;margin-right:auto;}
p{margin:10px;line-height:30px;}

/*解决ie6下position:fixed失效*/
*html,*body{height:100%;overflow-x:hidden;overflow-y:auto;}
.container{position:relative;width:100%;height:100%;overflow:auto;}
.box{position:fixed;left:150px;top:150px;background:red;width:100px;height:100px;}
*html .box{position:absolute;}
</style>
</head>
<body>
<div class="container">
<div class="wrapper">
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
<p>“记事本”是一个用来创建简单的文档的基本的文本编辑器。“记事本”最常用来查看或编辑文本 (.txt) 文件,但是许多用户发现“记事本”是创建网页的简单工具。</p>
<p>因为“记事本”仅支持很基本的格式,所以您不能在需要保持纯文本的文档中偶尔保存特殊格式。因为特殊字符或其他格式不能在所发布的网页上显示,否则可能导致错误,所以,在为网页创建 HTML 文档时它特别有用。</p>
<p>可以将记事本文件保存为 Unicode、ANSI、UTF-8 或高位在前的 Unicode 格式。当使用不同字符集的文档时,这些格式可以向您提供更大的灵活性。</p>
</div>
</div>
<div class="box"></div>
</body>
</html>


测试浏览器:chrome,firefox,safari,ie8,ie7,ie6,opera

优点:

1、相对于强大的 css 表达式,代码更少。

2、不需要懂 javascript。

缺点:

1、多了一层 .container 的 div。

2、css hack。

3、不能给 body 加背景,不然 ie6 下有问题,不过可以把 body 的背景加到 .container 的上面,其效果是一样的。

总结:我想相对于优点来说,缺点可以忽略不计了吧。

PS:需要注意的是,我在页面头部引用了 base.css 来重置浏览器的默认样式,如果不想加载的话,可以用 *{margin:0;padding:0;} 来代替。

原文地址:http://ryanfait.com/resources/fixed-positioning-in-internet-explorer/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: