确定 html 节点的样式

Determining styles for a html node

我有很多 html 文件是用 MS Word 生成的。 html 代码主要是包含文本节点、段落、跨度等的表格。文件不包含 javascript 或展示任何其他动态行为。但他们确实有 CSS 风格。

htmlagilitypack 是否有办法确定 html 节点在 CSS 部分中声明的样式?据我了解,htmlagilitypack 在创建 DOM 时不会解析 CSS。正确吗?

如果 htmlagilitypack 无法解析 CSS 样式,最好的工具是什么?我应该改用 Selenium 吗?

Selenium 通过 Javascript 找到了答案。

ChromeOptions Options = new ChromeOptions();
Options.AddArgument("--headless");
IWebDriver Driver = new ChromeDriver(Options);
Driver.Navigate().GoToUrl(@"file://Some_File.html");

// The correct style
var properties = ((IJavaScriptExecutor)Driver).ExecuteScript("return window.getComputedStyle(arguments[0],null).cssText", e);

Driver.Close();
Driver.Quit();