C#渲染HTML以获取元素的高度

c# html html-agility-pack

我需要使用HTML Agility Pack从C#代码创建一个HTML页面。我想要的是,如果我试图写的元素不能适合具有特定高度的div,它必须创建一个新的div并关闭另一个(如果你想要的话就像分页一样)。我最关心的是如何知道C#中我的元素的高度,我假设我强制将它渲染到与CSS关联的某个地方,但是如何?

一般承认的答案

一种方法是使用像WebKit.NET这样的HTML渲染器。

然后,您可以调用其中的javascript来检索DOM对象属性,如高度,位置等...

一旦设置并呈现了要测试的内容( 此处教程 ),请使用StringByEvaluatingJavaScriptFromString函数来访问javascript函数。

string height = webKitBrowser1.StringByEvaluatingJavaScriptFromString("$('#divID').height().toString()");

请注意,您需要返回一个字符串值,因为此函数不返回其他类型。



许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因