css3 position fixed固定居中问题解决方案
(编辑:jimmy 日期: 2024/11/27 浏览:3 次 )
通常,我们要让某元素居中,会这样做:
复制代码代码如下:
#element{
margin:0 auto;
}
如果还想让此元素位置固定呢?一般我们会添加position:fixed,如下:
复制代码代码如下:
#element{
position:fixed;
margin:0 auto;
}
但是这样做的结果就是,元素不居中了。这说明fixed使对象脱离了正常文档流。
解决方案:
复制代码代码如下:
#element{
position:fixed;
margin:0 auto;
left:0;
right:0;
}
但是在IE7以下的版本中无法工作,要将其更改为:
复制代码代码如下:
#element{
position:fixed;
margin:0 auto;
left:auto;
right:auto;
}
最后我们可以这样:
复制代码代码如下:
if ($.browser.msie && parseInt($.browser.version, 10) <= 7) {
strAlertWrapper.css({position:'fixed', bottom:'0', height:'auto', left:'auto', right:'auto'});
}
复制代码代码如下:
#element{
margin:0 auto;
}
如果还想让此元素位置固定呢?一般我们会添加position:fixed,如下:
复制代码代码如下:
#element{
position:fixed;
margin:0 auto;
}
但是这样做的结果就是,元素不居中了。这说明fixed使对象脱离了正常文档流。
解决方案:
复制代码代码如下:
#element{
position:fixed;
margin:0 auto;
left:0;
right:0;
}
但是在IE7以下的版本中无法工作,要将其更改为:
复制代码代码如下:
#element{
position:fixed;
margin:0 auto;
left:auto;
right:auto;
}
最后我们可以这样:
复制代码代码如下:
if ($.browser.msie && parseInt($.browser.version, 10) <= 7) {
strAlertWrapper.css({position:'fixed', bottom:'0', height:'auto', left:'auto', right:'auto'});
}
下一篇:IE6下position fixed失效的解决方法(亲测有效)