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合法嗎? 是的,了解原因