如何在不使用浏览器控件的情况下检测网页的高度

时间:2011-05-11 16:46:25

标签: c# .net dom webbrowser-control

我需要在IE中呈现网页的呈现高度。

我目前正在使用WebBrowser控件加载HTML页面,然后找到文档的clientHeight(或者scrollHeight,我忘记了哪个)。这很有效。

问题是,我需要此代码作为API调用的结果从Web服务运行并启动基于Windows窗体的控件以加载WebBrowser控件是丑陋的(我假设)非常耗费资源。

那么,是否有一个无头浏览器实现可以让我找出渲染的HTML的可能高度?我知道这不适用于iframe,滚动等的div,而且它不需要超级准确(在200px内就可以了)。

我们测试的HTML页面范围从大约700px高到几千像素高,因此找出粗糙的高度将是完美的。使用的HTML往往非常简单,因为这些页面实际上是HTML电子邮件,从电子邮件中提取并发送到Web浏览器。

1 个答案:

答案 0 :(得分:1)

这实际上取决于浏览器及其渲染引擎。您可能必须使用渲染器。

如果您的HTML是标准HTML,您应该能够使用HTMLayout的内存中呈现功能,结果将类似于其他浏览器。

它在http://code.google.com/p/nabu-library/

处有一个.NET包装器