我在使用WebBrowser控件导航到网站时遇到IE8兼容性问题.奇怪的是有时网站有效,但很可能不会.我有时可以刷新页面,也可以.
只是去IE8的页面我遇到了相同的CSS渲染问题所以我切换到兼容模式,它刷新并正确呈现.
有没有办法为WebBrowser控件模拟此效果.我希望能够像在Internet Explorer中一样,单击按钮并关闭和打开模式.
这可能吗?如果是这样,有人知道怎么做?
谢谢
css c# webbrowser-control internet-explorer-8 compatibility-mode
我尝试在以下位置添加注册表项:
Hive: HKEY_CURRENT_USER
Key Path: Software\Policies\Microsoft\Internet Explorer\BrowserEmulation\PolicyList\
Value name: sub.companyname.com
Value data: sub.companyname.com
Run Code Online (Sandbox Code Playgroud)
但是,在Internet Explorer 11中,此方法不起作用,因为列表已移动.
My.Computer.Registry.SetValue("Software\Policies\Microsoft\Internet Explorer\BrowserEmulation\PolicyList", "sub.companyname.com", "sub.companyname.com")
Run Code Online (Sandbox Code Playgroud) vb.net internet-explorer compatibility-mode ie-compatibility-mode
我正在处理的网站的URL最终在Microsoft兼容性列表中.这意味着每次IE用户访问它时,强制使用IE9模式,这使得无法使用现代CSS或Javascript.

网站上每个HTML文档的前6行看起来都是这样的.没有条件评论.我也试图<title>在<head>没有任何成功之后立即提出标题.
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta charset="utf-8">
<title>...</title>
Run Code Online (Sandbox Code Playgroud)
响应HTTP标头始终包含
X-UA-Compatible IE=Edge
Run Code Online (Sandbox Code Playgroud)
但它似乎没有任何区别.强制IE关闭IE9模式的唯一因素是"设置"对话框中的此复选框.仅当未设置时,站点才会以边缘模式显示.

另外,我最近发现Microsoft的iecompatdata.xml包含featureSwitch="overrideXUACompatible:false"站点条目旁边的属性.
还有什么我可以尝试阻止我的网站在IE兼容模式下显示?
internet-explorer compatibility-mode http-headers x-ua-compatible
Java支持兼容模式运行吗?换句话说,如果我们在系统上安装了 JDK 8,是否可以将其配置为使用相同的安装在 7 或之前版本上运行我的应用程序?
我可以举一个例子,比如 IE-11 可以根据兼容性选项切换为 IE 8、9 或 10 运行。
因此,我们的公司网站一直在使用iframe嵌入方法,因为YouTube切换到这一点,一切似乎都运行正常.截至上周,我们开始在IE7和IE9中取代视频的黑盒子(在兼容模式下).我没有在这里或网上找到任何似乎专门解决这个问题的东西,除了几个帖子说"关闭兼容性视图".
我们可以对单个视频使用已弃用的对象嵌入方法(当然,这不是最佳的),但对于播放列表,除了iframe方法之外,我们似乎没有其他选项.
还有其他人遇到过这个问题吗?YouTube iframe代码最近有变化吗?任何帮助都将不胜感激.