测试IE7& IE8使用IE9开发工具 - 右文档模式复制旧版本?

时间:2011-06-27 10:05:21

标签: html internet-explorer html5

我正在构建一个包含HTML5元素的网站,如果以前版本的IE会播放,我会更喜欢它,所以我正在使用googlecode的HTML5shim javascript。

我必须测试IE7和IE8的唯一方法是使用IE9上的开发人员工具来切换浏览器模式和文档模式。

即使使用垫片,如果我选择IE7或IE8浏览器模式及其相关标准模式,文档也相差甚远 - HTML5元素的行为不像div(我的印象是shim取代了所有新元素与divs)。

如果我选择IE7和IE8的怪癖模式,该网站或多或少看起来应该如何,这让我希望我可以解决任何剩余的问题,而无需借助剥离HTML5元素。

因此,如果您使用带有HTML5文档类型的IE7或IE8,它们是否会以怪癖或标准运行?

另外,我是否可以相信我在IE9中看到的模仿旧版本的内容是旧浏览器的用户实际看到的内容?

4 个答案:

答案 0 :(得分:6)

我要伸出脖子说不。你不能相信IE9模仿旧版本。

我最近遇到了一些issues regarding IE9 emulating IE8使用X-UA兼容的IE = EmulateIE8来强制通过IIS进行IE8渲染。我必须说一切都很好,直到我从Jquery 1.4.3升级到Jquery 1.6.1。我开始在Jquery使用$("#myObject");

选择DOM对象时遇到一些奇怪的问题

但在视觉上一切看起来都很好但是IE9的DOM还不是很好。在升级到IE9之前一切正常,如果Jquery 1.6.1正常工作,测试可能会再次降级到IE8。但根据我的经验,我不认为你可以信任IE9模拟旧浏览器,最好的办法是用旧的浏览器设置一个可以给你更好结果的虚拟机。我打算这样做,而是将VM与旧浏览器(IE8)一起使用。

<强>更新

我采用了VM路由方式,以这种方式测试IE8要容易得多,所以我所做的只是安装了安装了IE8的虚拟机。

答案 1 :(得分:4)

IE8和IE9中的兼容模式旨在让您完全按照自己的要求进行操作 - 在您的计算机上只有一个版本的IE时,测试您所有IE版本的网站。

原则上这是一个好主意。不幸的是,微软搞砸了。虽然兼容模式确实复制了IE7和IE8,但它们也有自己的错误和问题,这些错误在父浏览器和他们试图模拟的浏览器中都不会发生。

实际上,兼容模式实际上是另一组不同的浏览器。您不能依赖它们来准确地向您显示您的网站在IE7中的样子,但同时您仍然需要使用它们进行测试,以防您的用户因任何原因在兼容模式下运行。

您还询问了怪癖模式和标准模式。请注意,“怪癖模式”与兼容模式无关。

Quirks模式在IE中由页面顶部没有<!DOCTYPE>声明的网站触发。这是在使用IE6引入标准模式时引入的,以允许站点继续在旧版本的IE中工作。因此,Quirks模式实际上是IE5兼容模式。今天绝对没有理由在任何网站中使用怪癖模式,因此您应该始终指定doctype(最好是HTML5 doctype)。如果您的网站在怪癖模式下看起来不错,而不是在标准模式下,那么您需要修复您的网站。

HTML5 doctype <!DOCTYPE html>将在IE6及更高版本的所有IE版本中触发标准模式。事实上,这个doctype是由HTML5标准团队专门选择的,因为它是可用于所有现有浏览器的最短文档类型。

关于HTML5Shim:我在使用基本填充程序时遇到了一些麻烦。我从未追踪过这个问题,但我使用Modernizr来解决问题。它具有与基本填充程序相同的功能,以及用于浏览器兼容性检查的一系列其他有用功能。

你对垫片做什么的印象有点错误:它不会用div替换元素。它实际上做的是使用Javascript创建每个新HTML5元素的虚拟版本。这利用了IE中的一个怪癖,如果一个元素的实例是通过Javascript创建的,它就会将元素识别为有效的HTML。 (这是一个奇怪的怪癖,但事实证明黑客迫使IE接受现代标准是有用的。

希望有所帮助。

答案 2 :(得分:4)

请记住在这些元素上设置display:block。像:

这样的规则
article, aside, figure, footer, header, hgroup, nav, section {display: block;}

在你的CSS中会有所帮助。

答案 3 :(得分:0)

我对ie7 / ie8 / ie9测试的回答是使用Sun Oracle的VirtualBox。它适用于Windows,Mac和Ubuntu!它包含Windows框和IE版本的真实图像。

https://www.virtualbox.org/wiki/Downloads

http://osxdaily.com/2011/09/04/internet-explorer-for-mac-ie7-ie8-ie-9-free/

这对我测试旧版本的工作非常有用。