添加一行声明代码-兼容IE8

无意打开IETester在IE8下测试了一个页面,突然发现一个父级position:relative;子级position:absolute;的样式焦点轮播的时候在IE8下居然是错位的。仔细看了一下,发现IE8居然不认父级的相对定位,直接就是在屏幕上显示绝对定位。初步判断是IE8对JS的解释变化了。但是我之前在各个浏览器都测试过了,没问题。
本着学习的态度,我开始查看一些知名站点在IE8下的显示情况,当然过程是疑惑+漫无目的的。直接奉上我最后得到的结果吧。在HEAD里面多了一些代码。很疑惑,搜索一下,找到了微软的MSDN,在IE8的问题下面有一条“如何立即修复我的站点?”,看完了文章,恍然大悟,原来代码是强制将IE8以类似IE7的方式来呈现页面。
code
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

原文:
快速短期修复措施
您维护的现有网页可以在 Windows Internet Explorer 7 中正常显示,但您希望通过极少的修改进行更新后,它能够在 Windows Internet Explorer 8 中正常显示。有两种方法。您可以在每个页面中添加兼容性模式 META 标记,强制 Windows Internet Explorer 8 以类似 Windows Internet Explorer 7 呈现页面的方式来呈现页面。如果您控制 Web 服务器,还可以将服务器配置为发送与每个网页的 META 标记等效的自定义 HTTP 响应标头,以使服务器自动添加兼容性。

如何修改每个页面
将以下 HTML META 标记放置到每个网页的 HEAD 元素中(在除 TITLE 或 META 外的标记之前):

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>

通过以上方式修复您的网站后,将强制 Windows Internet Explorer 8 以类似 Windows Internet Explorer 7 呈现页面的方式来呈现页面。

如何将服务器配置为自动修改每个页面
若要在每个页面中自动添加等效于 HTML META 标记的兼容性,请将服务器配置为发送以下标头:

X-UA-Compatible:IE=EmulateIE7

若要配置 Microsoft Internet Information Services (IIS) 7.0,请按以下方式配置 Web.config 文件:
code
<?xml version="1.0" encoding="utf-8"?>
<configuration>
   <system.webServer>
      <httpProtocol>
         <customHeaders>
            <clear />
            <add name="X-UA-Compatible" value="IE=EmulateIE7" />
         </customHeaders>
      </httpProtocol>
   </system.webServer>
</configuration>

[本日志由 dangbao 于 2008-11-07 11:31 AM 编辑]
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: 兼容IE8
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.