注意:本文档是预备文档,随时可能变更。
开发 Windows Internet Explorer 首要考虑的问题是在新功能和特性与现有 Web 的站点兼容性之间做出权衡。Windows Internet Explorer 8 引入了兼容性模式,以帮助简化从旧标准到新标准的过渡。有关 Windows Internet Explorer 8 兼容性模式的详细信息,请参阅以下文档。
- 未来兼容性中的 META 标记和锁定
本文档将向您介绍修复站点以便在 Windows Internet Explorer 8 中正确呈现所需的步骤。
快速短期修复措施
您维护的现有网页可以在 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 文件:
<?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>
(将 Web.config 文件添加到您希望应用此更改的目录中。)
请注意,网页的实际标记中显示的 META 兼容性模式切换标记始终超出 HTTP 标头声明。
有关如何将 Web 服务器(包括 IIS 6.0)配置为发送自定义 HTTP 响应标头的详细信息,请参阅下列文档。
- 在 IIS 上实现 META 切换
- 在 Apache 上实现 META 切换
建议将这些短期修复措施只用于快速、暂时的修复活动。最后,您还是应该修改您的网站,使它在 Windows Internet Explorer 8 和更高版本中使用基于标准的代码,在 Windows Internet Explorer 的早期版本中使用旧代码。
推荐的永久解决方案
您维护的现有网页可以在 Windows Internet Explorer 7 中正常工作。您希望创建可以在 Windows Internet Explorer 8 中正常运行的基于标准的页面,同时具有一些特殊处理以适应旧的浏览器版本。将新的 CSS 2.1 功能添加到主页流后,需要将兼容性模式配置为 IE8 标准并使用条件注释提供对旧版本 Windows Internet Explorer 的修复措施。