首页 > 解决方案 > 我的浏览器加载 CSS 时出现问题,我不知道该怎么办

问题描述

好的,所以我正在使用 Visual Studio 2019 在 Winforms C# 中制作浏览器,我注意到在加载某些具有更高级 UI 的网站时,它要么看起来很奇怪,要么根本不加载。我不确定这是为什么。 截屏

这也是我关于堆栈溢出的第一个问题,所以我不确定它是如何工作的。

标签: c#visual-studiobrowser

解决方案


WebBrowser 控件的问题在于默认情况下它以 IE7 呈现模式呈现输出。我也重现了你的问题。 在此处输入图像描述

如果您不覆盖注册表中的功能浏览器模拟设置,将使用 Internet Explorer 7 渲染。

打开注册表,我用的键是:HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION

对于您的用户(当前用户),仅使用此键:

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION

对于计算机/服务器上的所有用户,请使用此密钥:

在 64 位应用程序上的 64 位应用程序或 32 位计算机上的 32 位应用程序上:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION

在 64 位机器上的 32 位应用程序上:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION

价值:

11001 (0x2AF9) Internet Explorer 11。无论 !DOCTYPE 指令如何,网页都以 IE11 边缘模式显示。

9999 (0x270F) Windows Internet Explorer 9。无论 !DOCTYPE 指令如何,网页都以 IE9 标准模式显示。

因为我的可执行文件名为 browserloadingcss.exe,所以我添加了一个名为 browserloadingcss.exe 且值为 11001 的 DWORD 条目(以使用 Internet Exlporer 11-rendering)。我也试过设置值9999,它可以正常渲染。 在此处输入图像描述

然后我运行我的程序并得到以下结果图:

在此处输入图像描述


推荐阅读