在 WinForms WebBrowser 中编辑 CSS

Posted

技术标签:

【中文标题】在 WinForms WebBrowser 中编辑 CSS【英文标题】:Editing CSS within WinForms WebBrowser 【发布时间】:2012-08-09 22:16:21 【问题描述】:

我目前有一个带有 WebBrowser 控件的 WinForms 应用程序,我可以使用非常有用的 htmlAgilityPack 成功地编辑标记。我现在的问题是,如何编辑我的页面引用的样式表?

理想情况下,我希望能够获得完整的规则集,找到必要的 ID,然后像这样简单地编辑 CSS 声明:background-color:#ccc;

似乎应该有一个简单的解决方案,但我很难找到一个。

编辑:另外,我应该指出它可能并不总是“#ccc”,重点是我确切地知道我想要修改哪些选择器,以及它们在样式表中的哪些类中。第一次编辑后,确切的颜色将是未知的,所以我不能只对那个 background-color:#ccc 规则进行替换。

【问题讨论】:

对于任何有兴趣的人,请改用 CefSharp。 ***.com/a/4348277/563309 【参考方案1】:

您可以从文档的 HTML 中获取 CSS 文件的src URL,以获取完整的 CSS 样式集。然后,修改后,将 CSS 保存到文件系统中。

最后,要应用更改,您可以修改 <link src="..."** > 以指向更新后的样式表。

如果您需要解决页面上可能存在多个样式表的问题,您可以简单地将各个表单声明的内容合并到一个字符串中,然后继续上述操作

【讨论】:

以上是关于在 WinForms WebBrowser 中编辑 CSS的主要内容,如果未能解决你的问题,请参考以下文章

如何在winforms的WebBrowser控件中调用javascript?

Winforms WebBrowser 控件 URL 参数

在 C# winforms 中的同一表单上从一个 webBrowser 导航到另一个 webBrowser

在 WinForms WebBrowser 控件中设置常规文本大小选项

Mono Winforms WebBrowser 错误 - 未找到 libgluezilla

WebBrowser 样式未在 WinForms 中正确应用