附录 1:Internet Explorer 6 到 Internet Explorer 8 浏览器的更改
下表描述了 Microsoft Internet Explorer 6 和 Windows Internet Explorer 8 之间的更改。
从 Internet Explorer 6 到 Internet Explorer 7 的设计更改
从 Internet Explorer 7 到 Internet Explorer 8 的设计更改
${ROWSPAN2}$Internet资源管理器版本控制${REMOVE}$
通过 用户代理字符串探查、版本向量或条件注释检查 Internet Explorer 6、Windows Internet Explorer 7 或 Internet Explorer 8 中的错误特殊情况的代码。
- 当长用户代理 (UA) String 遇到仅接受较短的 UA 字符串的服务器时,用户会看到 错误页。
- Internet Explorer 8 中的兼容性视图(默认情况下为 Intranet 站点启用)发送 Internet Explorer 7 用户代理字符串。 若要区分 Internet Explorer 7 和兼容性视图,请查找新的 Trident 令牌。
${ROWSPAN3}$ 标准合规性更新
- 适用于 指定的文档模式。
- Internet Explorer 8 兼容性视图模式(默认情况下,Intranet 站点处于打开状态)通常会 将标准更新从 Internet Explorer 7 还原到 Internet Explorer 8。
- 使用 模拟IE7 X-UA 兼容 HTTP 标头或 元 元素在网站或特定网页上启用兼容性视图。
${REMOVE}$
Quirks 模式异常:通过将“standard-compliance”DOCTYPE 开关设置为“off”) ,无需对指定 quirks 模式 DOCTYPE (的网页进行标准符合性更改。
适用于 Internet Explorer 7 标准或“严格”模式及更高版本:
- 源代码第一行中的 XML prolog 不再导致 DOCTYPE 声明失败。
- Box 模型 溢出内容与框相交,并且不再自动增大 box div 以适应内容。
- 某些 CSS 筛选器 (,例如,不支持 *HTML、_underscore 和 /**/ 注释) 。
- 只有嵌套对象中最外层的 OBJECT 元素 被实例化。
- 依赖于 SELECT 元素 来获取 HWND 以用于 Microsoft Win32 API 的应用程序可能会中断,因为 SELECT 元素 现在是一个无窗口控件。
- 不支持通道定义格式 (CDF) ,而支持 RSS 源。
- XBM 是一种专为基于 X 的系统设计的映像格式,不受支持。
- 不允许使用HEAD文档之外的 BASE 标记。
适用于 Internet Explorer 8 标准模式及更高模式:
- 未封闭的 P 元素 后跟 TABLE、 FORM、 NOFRAMES 或 NOSCRIPT 元素时,会自动关闭。
- 不支持格式错误的 HTML,而使用格式正确的有效标记。
- 不支持 “className”属性 语法,而使用“class”语法。
- 特性集合 不包含 Windows Internet Explorer 识别的所有可能属性。
- 属性顺序已更改,影响属性集合、innerHTML 和 outerHTML。
- GetElementById 区分大小写,不搜索名称属性。
- 一般 CSS 前缀选择器 (即不支持 v\:* 语法) ,而应使用显式标记名称。
- 不支持 CSS 表达式,而支持改进的 CSS 支持或 DHTML 逻辑。
- 用于自定义 JSON 对象方法的代码可能与 Internet Explorer 8 中 新的本机 JSON 对象 冲突。
- 取消设置 currentStyle 对象上的初始属性将返回其初始值。
- 例如,currentStyle 对象样式对象上的未指定的属性值返回空字符串 (,请参阅) ASP.NET 菜单和 IE8 呈现白色问题博客文章。
- 对于关注辅助功能的网站和应用程序, 请跨所有 Internet Explorer 呈现模式更新 ARIA 语法。
- 检查 从 Internet Explorer 6 到 Internet Explorer 8 的 CSS 更新的完整列表。
安全性改进
- 无论文档模式如何,都适用。
- 可以使用 组策略 关闭安全功能。
- 不允许 使用 window.opener 绕过 window.close 提示。
- 默认情况下,对象缓存保护 处于启用状态,当用户浏览到新域时,会阻止访问对象的引用, (适用于 Windows XP 上的 Internet Explorer 6 及更高版本,Service Pack 2 (SP2) 及更高版本) 。
- 默认情况下禁用 DHTML scriptlet。
- 写入状态栏的脚本 将被阻止。
- 如果 URL 不符合 RFC 准则,则 URL 创建可能会失败。
- 如果站点仅配置为 SSLv2,或者站点安全证书已过时或无效、存在错误或密码较弱,HTTPS 页将显示错误页。
- 仅支持 “Punycode”编码的国际化域名 。 其他格式(如 ANSI 和 UTF-8)将被阻止。
- 阻止跨域脚本 URL、DOM 对象中的重定向导航和框架导航。
- 从脚本创建的模式对话框或无模式对话框看起来可能稍大一些。
- 不安全的协议 视图源、Gopher (在 WinINET 级别) ,并且 Telnet 不起作用。
- 默认情况下,XSS 筛选器 处于打开状态,这会阻止最常类似于 Type-1 XSS 攻击的脚本模式,除非通过 X-XSS-Protection HTTP 标头禁用它们。
- 不支持跨域、跨文档通信黑客(如 SCRIPT SRC ),转而使用更安全的 XDM 和 XDR AJAX 功能。
- 启用了 AJAX 的、 手动操作 URL 哈希的站点 可能会被 new window.location.hash 导航属性破坏。
- 新的 AJAX 功能 (如 XDM )具有可能与现有自定义属性冲突的 本机 属性。
- 文件上传控件 仅将文件路径(而不是完整路径)提交到服务器。
- 使用 “image/*”MIME 类型 传递的 HTML 代码或脚本被阻止执行。
- 在不同的安全上下文中将顶级框架导航到站点会打开一个新窗口或选项卡,而不是在现有框架中导航。
- UTF-7 编码脚本 强制使用 Windows-1252 编码,这可能会导致纯文本呈现。
- HTTP/HTTPS“混合模式”页 显示一个对话框,该对话框默认显示仅 (的安全项,而以前的非安全默认) 。 用户可能会错误地 选择阻止 HTTP 元素,例如关键图像。
- 默认情况下,DEP/NX 处于打开状态,这会阻止某些加载项 (即 ActiveX 控件和 COM 对象) 使用旧版 ATL 生成,从而在内存中运行标记为“不可执行”的代码。
- 如果未建立 SSL 隧道以响应对原始服务器的 CONNECT 请求,则会阻止 Web 代理返回的内容。
体系结构更改
- 无论文档或兼容模式如何,都适用。
- 默认情况下,为 Internet、Intranet 和受限站点区域启用保护模式。 此模式阻止可能带来安全风险的浏览器扩展运行,并阻止较低特权应用程序访问更高特权进程(如“开始”菜单、控制面板,Microsoft Windows 注册表 (适用于 Windows Vista 上的 Internet Explorer 7 及更高版本及更高版本) 。
- 保护模式更新:默认情况下,Intranet 以中等 (而不是低) 完整性级别运行。
-
松散耦合 Internet Explorer 可能会阻止加载项 (即 ActiveX 控件和 COM 对象) 执行以下操作之一:
- 使用 Windows 层次结构技术查找 UI 框架和选项卡窗口 (它们现在以不同完整性级别) 在单独的进程中运行。
- 从低完整性选项卡进程创建 UI 框架的子类 (现在处于中等完整性级别) 。
- 在 UI 框架和选项卡之间使用不受支持的消息传递技术。
相关主题