2012-05-15 71 views
4

我最近做了一个网站,但我有一个非常大的问题与Internet Explorer。 CSS似乎在IE中做了奇怪的事情。 而不是复制数百行CSS这里是链接到网站的页面:http://www.appwheal.com/app/ios/angry-birds-space 所有的内容应该显示在屏幕中间。相反,IE浏览器卡在左侧。Internet Explorer的CSS - 中心Div

我使用

margin-left: auto; 

margin-right: auto; 

这是由IE支持的,正确的。

请帮助和提前致谢。

+0

它还需要一个*宽:*。 –

+0

[Float a div to center]的可能重复(http://stackoverflow.com/questions/1740587/float-a-div-to-center) –

回答

12

您需要声明DOCTYPE或Internet Explorer默认为Quirks模式(IE5兼容性)。进入Internet Explorer,点击F12调出开发工具,并注意它在文档模式下显示“Quirks”模式。怪癖不支持任何已知的div集中化方法,并且宣称DOCTYPE是解决它的最简单(并且推荐)的方式。

要设置页面的XHTML 1.0过渡(这是最常见的),使用

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

要声明的页面是HTML5兼容,使用

<!DOCTYPE html> 

DOCTYPE线必须在html文件的第一行,出现在开头的<html>标记之前。

+0

谢谢,我感到很傻,我忘了这一点。至少我不需要改变CSS的负载。 –

+0

非常感谢解释! – Nadeeshani

1

,还必须设置

body { 
    text-align: center; 
} 

#yourDiv { 
    margin: 0 auto; 
    text-align: left; 
} 
+0

DOCTYPE未设置; IE在Quirks模式下渲染页面。 – saluce

+0

啊,真棒掷骰子模式。谢谢 – Kristian

+0

是的,如果您将开发人员工具中的文档模式更改为IE7,则无需更改CSS即可完美工作,因此在主体中设置文本对齐:居中不是必需的 – saluce

0

您可以使用旧学校的text-align:中心 并尝试顶部:50%;左:50%;并抵消合适的负像素

1

设置的空白和宽度:

#yourDiv { 
    margin: 0 auto; 
    width: 300px; 
}