IE中心网站

时间:2013-03-09 16:33:33

标签: css internet-explorer-8 centering

我已经阅读了几个关于这个主题的帖子,我已经尝试了很多这些帖子,但我不能让我的网站集中在IE中 - 特别是IE 8(我目前的浏览器)。它适用于FF,Safari和Chrome。 www.hscassociates.net是网站。

在我的CSS中我正在这样做:

div#section {
  width:960px;
  margin:0 auto 0 auto;
  border: 2px solid #b31b1b;
  border-top:none;
} 

另外,我在#section div中需要一个背景图片,但是当我将它放在div#section块的css文件中时它不会显示。为了让它显示,我把它放在我的包含文件中我显示#section div标签:

<div id="section" style="background-image:url('graphics/section-bg.gif'); 
                         background-repeat:repeat-y;">

我读过的一篇帖子说html doctype需要使用strict。我以前从未读过这篇文章。这有什么道理吗?我正在使用过渡性的。

2 个答案:

答案 0 :(得分:1)

您的DOCTYPE应该是您网页上的第一个标记。因为不是IE正在以quirks mode的形式呈现您的页面。 DOCTYPE本身并不需要严格,但是如果使用正确的DOCTYPE,页面将以严格模式呈现。

什么是怪癖模式?

由于某些旧浏览器不符合W3C标准,因此开发人员必须编写符合非标准的代码,以确保其页面在这些浏览器中看起来正确。随着浏览器越来越接近标准,问题在于以旧样式开发的页面将无法再正确呈现。所以他们实现了两种渲染模式,怪癖严格

如果网站提供DOCTYPE作为第一个参数,则告诉浏览器该页面是用符合标准的代码编写的,以及要呈现的规范。因此浏览器可以使用严格模式来呈现页面。

但是,如果页面省略了DOCTYPE,那么浏览器不知道要呈现的规范,因此假定页面符合非标准(它自动用于省略DOCTYPE)并以怪异模式呈现它可能具有意想不到的结果。

以下是您需要做的事情:

更改

<html>
  <head>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>

答案 1 :(得分:1)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">触发怪癖模式。

如果您想使用HTML 4 Transitional,请使用<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

如果您不受HTML 4的约束,请使用<!DOCTYPE html>

您的页面显示两者都很好。