`

【web】IE文档模式(指定文档模式)

    博客分类:
  • web
 
阅读更多

对于 Web 开发人员来说,文本兼容性是一个要考虑的重要问题。Windows Internet Explorer 8 引入了文本兼容性模式,该模式允许 Web 开发人员将浏览器设置为以与旧版本相同的方式显示网页,从而允许开发人员选择更新时间。

本文档将介绍由 Windows Internet Explorer 8 支持的文本兼容性模式,以及如何使用自定义标头基于每个页面或每个站点实现这些模式。实现适当的兼容性模式后,可以确保站点与 Windows Internet Explorer 8 及更高版本兼容。

各种兼容性模式

Windows Internet Explorer 8 支持多种兼容性模式,它们可启用不同的受支持的功能,并影响内容的呈现方式。例如,

IE5 模式呈现内容时,像是使用了 Windows Internet Explorer 7 的 Quirks 模式,这与 Windows Internet Explorer 5 显示内容的方式很相似。

IE7 模式呈现内容时,无论页面是否包含 <!DOCTYPE> 指令,都像是使用了 Windows Internet Explorer 7 的标准模式。

EmulateIE7 模式通知 Windows Internet Explorer 使用 <!DOCTYPE> 指令确定如何呈现内容。标准模式指令以 Windows Internet Explorer 7 标准模式显示,而 Quirks 模式指令以 IE5 模式显示。与 IE7 模式不同,EmulateIE7 模式遵循 <!DOCTYPE> 指令。对于多数网站来说,它是首选的兼容性模式。

IE8 模式最大限度地支持行业标准(包括 W3C Cascading Style Sheets Level 2.1 Specification  W3C Selectors API,并能有限支持 W3C Cascading Style Sheets Level 3 Specification(工作草案)

Edge 模式通知 Windows Internet Explorer 以最高级别的可用模式显示内容,这实际上破坏了“锁定”模式。对于 Windows Internet Explorer 8,这与 IE8 模式是等效的。如果(假定)Windows Internet Explorer 的未来版本支持更高级别的兼容模式,设置为 Edge 模式的页面将显示在由该版本支持的最高级别模式中;但是,当使用 Windows Internet Explorer 8 查看时,这些相同的页面仍将显示在 IE8 模式中。由于在 Windows Internet Explorer 的未来版本中呈现页面内容可能出现意外,建议 Web 开发人员将 Edge 模式仅用于测试页面和其他非生产活动。

基于每个页面指定兼容性模式

要为网页指定文本模式,请使用 META 元素,以在该网页中包含 X-UA-Compatible http-equiv 标头。以下示例指定了 EmulateIE7 模式兼容性。

HTML:
<html>
      <head>
      <!-- Mimic Internet Explorer 7 -->
         <title>我的网页</title>
         <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
      </head>
      <body>
         <p>内容在此处。</p>
      </body>
</html>

Content 属性指定了该页面的模式;例如,要模仿 Windows Internet Explorer 7 的行为,请指定 IE=EmulateIE7。同样,可指定 IE=5、IE=7 或 IE=8 以选择其中一种兼容性模式。您还可以指定 IE=edge 以通知 Windows Internet Explorer 8 使用最高级别的可用模式。

X-UA-compatible 标头不区分大小写;但是,它必须显示在网页中除 TITLE 和其他 META 元素以外的所有元素之前的标头(HEAD 部分)中。

基于每个站点指定兼容模式

通过使用 Web 服务器为站点定义自定义 HTTP 响应标头,可为网站指定文本模式。HTTP 响应标头是 Web 服务器附加到为响应 HTTP 请求而发送到浏览器中的文件的信息,这些信息通常包含发送回文件的日期、大小和类型。

下列文档介绍了将 Web 服务器配置为将自定义 HTTP 响应标头附加到所有网页中所需的步骤。这将导致 Windows Internet Explorer 8 使用指定的文本兼容性模式,例如 EmulateIE7。

如果使用 Web 服务器指定了默认文本兼容性模式,则可通过在特定的网页中指定其他文本兼容性模式来覆盖该设置。在该网页中指定的模式优先于由服务器指定的模式。

使用脚本确定文本兼容性模式

要使用 Windows Internet Explorer 8 确定网页的文本兼容性模式,请使用 document 对象的 documentMode 属性。例如,将以下内容键入到 Windows Internet Explorer 8 的地址栏中,可显示当前网页的文本模式。

javascript:alert(document.documentMode);

documentMode 属性可返回与页面的文本兼容性模式相对应的数值。例如,如果所选页面支持 IE8 模式,则 documentMode 会返回 8。

注意:在 Windows Internet Explorer 6 中引入的 compatMode 属性已不受支持,取而代之的是在 Windows Internet Explorer 8 中引入的 documentMode 属性。当前使用 compatMode 的应用程序仍然可以在 Windows Internet Explorer 8 中运行;但是,它们已更新为使用 documentMode。

如果希望使用 JavaScript 确定文本的兼容性模式,请在其中包含支持 Windows Internet Explorer 旧版本的代码,如以下示例所示。

JScript:
engine = null;
if (window.navigator.appName == "Microsoft Internet Explorer")
{
      // 这是一个 IE 浏览器。引擎处于哪种模式下?
      if (document.documentMode) // IE8
         engine = document.documentMode;
      else // IE 5-7
      {
         engine = 5; // 假设为 quirks 模式;除非另外证实是其他模式
         if (document.compatMode)
         {
            if (document.compatMode == "CSS1Compat")
               engine = 7; // 标准模式
         }
      }
      // 引擎变量现在包含文本兼容性模式。
}

此处使用的文档对象表示给定浏览器窗口中的 HTML 文档,可用来检查、修改 HTML 文档或将内容添加到该文档以及处理该文档中的事件。

使用条件注释确定文本兼容性模式

如果只需要适应 Windows Internet Explorer,以下代码示例说明了如何使用条件注释来适用于当前版本或旧版本。

HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN">
<html>
      <head>
         <title>测试页</title>
         <meta http-equiv="X-UA-Compatible" content="IE=8"/>
         <!--[if gte IE 8]>
         <style type="text/css">
         body {
          color:#0000ff;
          background-color:#000000;
         }
         </style>
         <![endif]-->
         <!--[if lt IE 8]>
         <style type="text/css">
         body {
          color:#000000;
          background-color:#ffffff;
         }
         </style>
         <![endif]-->
      </head>
      <body>
         <h1>
         <!--[if gte IE 8]>
         第 1 章。
         <![endif]-->
         第一章
         </h1>
         <h1>
         <!--[if gte IE 8]>
         第 2 章。
         <![endif]-->
         第二章
         </h1>
         将看到任何版本的文本。
      </body>
分享到:
评论

相关推荐

    文档模式与IE浏览器模式

    此外,也可以通过设置`&lt;meta http-equiv="X-UA-Compatible" content="IE=edge"&gt;`这样的元标签来指定文档模式。 - **文档模式示例**: - 当设置`IE=edge`时,表示使用浏览器能够支持的最新文档模式。 - 当设置`IE=...

    IE8浏览器如何确定文档模式.docx

    IE8 浏览器如何确定文档模式 IE8 浏览器如何确定文档模式是指 IE8 浏览器如何根据文档类型、X-UA-Compatible meta 标签和头部、开发人员工具和兼容性视图设置来确定网站的渲染模式的过程。 文档类型(doctype)是 ...

    IE8 指定不同的页面渲染模式

    在探讨IE8指定不同的页面渲染模式这一主题时,我们深入解析了如何通过X-UA-Compatible元信息标记来控制Internet Explorer 8(以下简称IE8)在不同渲染模式下的表现,以实现跨浏览器兼容性优化。以下是对标题、描述...

    JAVA Web API文档.zip

    了解JScript的API有助于在IE环境中开发兼容性良好的Web应用。 7. **Spring**:Spring是Java企业级应用的主流框架,提供了依赖注入、AOP(面向切面编程)、数据访问、Web MVC等功能。Spring的API文档对于理解其工作...

    判断IE8兼容性视图工作模式

    这个属性在IE8及以上版本中引入,用于指示当前浏览器的文档模式。在标准模式下,`document.documentMode`将返回对应的IE版本号(如8),而在兼容性视图下,它可能返回7(模拟IE7)或其他更低的值。以下是一个简单的...

    weboffice在线编辑word文档

    值得注意的是,它只支持IE浏览器,这是因为IE浏览器支持ActiveX插件,而ActiveX是实现WebOffice功能的关键技术之一。ActiveX是一种由微软开发的控件技术,允许网页嵌入可执行代码,以提供更丰富的交互体验。然而,...

    解决各种IE兼容问题_IE6_IE7_IE8_IE9_IE10

    总之,解决IE兼容问题的方法主要包括使用`X-UA-Compatible`标签指定渲染模式、利用服务器端配置以及引入JavaScript库。开发者可以根据项目需求选择适合的策略,以确保网站在不同版本的IE浏览器中都能正常工作。不过...

    海康web版本开发文档

    本文档是关于海康威视Web3.0控件开发包的编程指南,它提供了一系列的API接口,使得开发者可以在网页上集成海康设备相关的视频监控功能。下面详细展开文档中的知识点。 ### 海康Web3.0控件开发包概述 Web3.0控件开发...

    Java Web Office 文档在线编辑

    ### Java Web Office 文档在线编辑知识点详解 #### 一、项目背景与意义 在现代办公环境中,能够在线编辑Office文档(如Word、Excel、PPT等)的需求日益增多。这不仅提高了工作效率,还增强了团队协作能力。传统的...

    wallstor Chm-Web帮助文档制作软件

    wallstor Chm-Web在线帮助文档制作软件,特点:1.支持在线编辑功能(所见即所得编辑文档内容);2.支持多用户协创;3.支持CHM/WORD导入;4.支持内容变量设置;5、支持HTML/PDF导出;6.支持多媒体功能;7、支持F1快速定位帮助...

    IE7与IE8的兼容性 配置文档

    为了解决IE7与IE8之间的兼容性问题,Microsoft引入了一个名为`X-UA-Compatible`的HTTP头字段,允许开发者指定IE应该使用哪种渲染模式来显示页面。这一字段可以通过服务器端设置,也可以通过HTML元数据插入到页面中。...

    ext3与ie9不兼容的问题

    2. **X-UA-Compatible元标签**:第二段代码中出现的`&lt;meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/&gt;`元标签,指示IE9应以IE7的渲染模式来显示页面。这通常是为了向后兼容旧版本的IE,但也会带来新的...

    ie8绿色版web开发专用

    6. **文档模式**:IE8有几种文档模式(如quirks模式、怪异模式、标准模式),理解它们之间的切换规则和影响,可以帮助调试和修复问题。 7. **条件注释**:IE浏览器特有的条件注释可以帮助开发者针对IE8编写特定的...

    Google Web Toolkit API 文档

    在阅读`Google Web Toolkit API.CHM`文档时,你可以找到关于各个类、接口和方法的详细说明,包括它们的功能、参数、返回值以及可能抛出的异常。这有助于你深入理解GWT的工作原理,并有效地利用其API进行开发。文档...

    easyUI 1.3.2及中文API文档离线版(兼容IE6)

    总结来说,这个压缩包提供了一个对 IE6 兼容的 EasyUI 1.3.2 版本及其中文 API 文档,对于需要在旧浏览器环境下开发 Web 应用的开发者来说,这是一个宝贵的资源。通过学习和使用这个版本的 EasyUI,开发者可以构建出...

    海康web控件3.0开发文档

    海康Web控件3.0开发文档提供了关于如何在网页上集成海康监控设备的详细指南。文档内容涵盖了从Web控件的基本介绍到各种函数的调用说明,具体包括控件初始化、设备信息获取、播放控制、录像操作、云台控制、图像处理...

    IE8如何定义浏览器工作模式避免网页显示混乱

    但在IE8中,由于对标准的支持更加严格,即使在标准模式下,某些XHTML文档使用Transitional类型时,会被识别为Quirks模式。 描述中提到的解决方法有两个步骤。首先,修改文档类型(DOCTYPE)从Transitional更改为...

Global site tag (gtag.js) - Google Analytics