1

从这篇文章Interoperable HTML5 Quirks Mode in IE10,基于HTML5的怪癖模式是IE10中默认的怪异模式,用于那些没有DOCTYPE或X-UA兼容标记的页面。 IE的传统怪癖模式现在被称为Internet Explorer 5怪异对于IE10,为什么WebBrowser控件的默认怪癖模式是“Internet Explorer 5怪癖”?

在官方的IE10中,它是。但不在WebBrowser控件中。默认的怪癖模式是WebBrowser控制应用程序中的IE5怪癖。

例如:一个简单的HTML页,如果没有DOCTYPE或X-UA-兼容标签:

<html> 
<head> 
<meta charset="UTF-8" /> 
<title>Get documentMode!</title> 
</head> 
<body> 
<h2>document.documentMode</h2> 
<p> 
<script> 
document.write(document.documentMode); 
</script> 
<p> 
</body> 
</html> 

的documentMode在官方IE10 = 10,但documentMode = 5在web浏览器控件的应用程序(试验前,我已将注册表项值HKEY_CURRENT_USER \ Software \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_BROWSER_EMULATION \ MyApp.exe添加到10000或十进制的10001)。

为什么行为不同?

如何将WebBrowser控件应用程序的默认怪癖模式配置为“基于HTML5的怪癖模式”?

感谢您的提前回复。

+0

你为什么不宣布一个DOCTYPE? –

+0

我无法修改网站页面。 –

+0

从文章IE10中的互操作HTML5怪癖模式,IE5怪癖模式仅用于那些没有DOCTYPE的页面,以及通过X-UA兼容的选择。我认为WBC应用程序中我最简单的html页面的文档模式应该是基于HTML5的怪癖,因为它没有DOCTYPE,并且也没有X-UA兼容标签(IE = 5)。但它的价值在于IE5怪癖。我可以有一些方法让我的WebBrowser Control应用程序具有相同的怪癖模式,而无需修改网页吗? –

回答

2

如果您希望IE10网页浏览器控件显示没有doctype的页面,则需要设置以下两个注册表项以使其工作。

重点:HKEY_CURRENT_USER \ SOFTWARE \微软\的Internet Explorer \ MAIN \ FeatureControl \ FEATURE_BROWSER_EMULATION
:yourappname.exe
类型:(DWORD_32Bit值)
数据:0x2711

密钥:HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Internet Explorer \ MAIN \ FeatureControl \ FEATURE_USE_QME_FOR _TOPLEVEL_DOCS
:yourappname.exe
类型:REG_DWORD(DWORD_32Bit值)
数据:1

+0

是的,添加隐藏的注册表项“FEATURE_USE_QME_FOR_TOPLEVEL_DOCS”的作品。谢谢您的回复。但有副作用。添加此密钥后,应用程序经常崩溃。有什么建议么? –

+0

@aaron - 你在世界的哪个地方了解了FEATURE_USE_QME_FOR_TOPLEVEL_DOCS?我在网上看到的唯一参考文献来自您的文章。你提出了一个支持问题吗? – donaddon

1

要强制文档在网络浏览器控制IE10标准模式显示(不论DOCTYPE的),注册表的DWORD值键HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION\MyApp.exe(其中MyApp.exe是你的应用程序的EXE文件的名称)should be0x2711

如果这不适合你,我建议使用如regmon这样的工具来确认它正在读取你的应用程序的注册表项。

+0

我已经测试值为0x2711的应用程序。它不起作用。根据你的建议,我用工具[Procmon](http://technet.microsoft.com/en-us/sysinternals/bb896645)确认注册表值已被读取。 –

+0

您添加的注册表项是否已读取? –

+0

是的,注册表项已被读取。是否有其他一些设置来控制行为? –