这是我的CSS,它在Firefox中运行良好,但在IE中不起作用。
#Createinner {
position: fixed;
width: 400px;
height: 280px;
margin-left: -200px;
margin-top: -140px;
top: 50%;
left: 50%;
background-color: #ccc;
}
如何解决这个问题。
先行致谢。
这是我的CSS,它在Firefox中运行良好,但在IE中不起作用。
#Createinner {
position: fixed;
width: 400px;
height: 280px;
margin-left: -200px;
margin-top: -140px;
top: 50%;
left: 50%;
background-color: #ccc;
}
如何解决这个问题。
先行致谢。
在页面顶部简单添加 DocType 标签即可。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML
- 我之前只有 HTML
,加上 X 才有所不同。 - gordon解决IE浏览器问题的方法是在以下代码中添加:
http://annevankesteren.nl/test/examples/ie/position-fixed.html
具体而言,是添加了:
h1{
position:fixed;
_position:absolute;
top:0;
_top:expression(eval(document.body.scrollTop));
}
对于IE 8中的固定位置,DOCTYPE非常重要。
其中之一:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
或者
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
或者
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
或者
<!DOCTYPE HTML>
非常重要的一点是
css:
#footer
{position: fixed; right: 0px; bottom: 0px; }
html:
<div id="footer" >
Fixed Div
</div>
http://code.google.com/p/fixedposition/
这样的代码可能适合你:
$(document).ready(function(){
$("#Createinner").fixedPosition({
debug: true,
fixedTo: "bottom"
});
});
您可能需要进行一些小的CSS调整才能使其适用于您的代码。目前,我正在将"偏移量"值作为选项处理。
IE6不支持固定定位。
如果你真的需要在IE6中使用这个功能,可以使用条件注释来提供一个仅供IE使用的CSS文件,并使用CSS表达式来模拟position:fixed
。
(编辑以更正IE版本信息。)
http://ieproblems.blogspot.com/ 使用这个链接,它会解决你的问题。
#mainDiv{
overflow:auto;
}
#subDiv{
position:relative;
top:expression(this.offsetParent.scrollTop+'px');
left:expression(this.offsetParent.scrollTop+'px');
}
<html>
<head>
</head>
<body>
<div id="mainDiv">
<div id="subDiv">
This Text is Fixed
</div>
</div>
</body>
</html>
position: fixed
- 如果需要支持IE6,请使用{{link1:workarounds}}position: fixed
- 使用{{link2:standards mode triggering Doctype}}(通常HTML 4.01 Strict是正确的选择)