获取DOM元素的计算样式

时间:2012-09-18 08:31:45

标签: java flying-saucer xhtmlrenderer

布局完成后,我想解析DOM树并获取每个元素的计算样式。这可能。

我能得到的最接近的是下面的代码片段,但它只提供了未计算的样式。

Element elm = (Element) _doc.getElementsByTagName("table").item(0);
Map props = _sharedContext.getCss().getCascadedPropertiesMap(elm);

是否也可以获得该元素所在的“ Box ”。

1 个答案:

答案 0 :(得分:0)

您可以使用ITextRenderer.getRootBox()访问文档中的计算样式。

此方法返回org.xhtmlrenderer.render.Box个对象的树,您可以扫描这些对象以找到您的元素。

您可以使用Box.getStyle()获取框计算样式,并且可以使用Box.getElement()获取框引用的元素。