Как получить доступ к свойствам CSS для узла DOM с помощью HTML-рендера Cobra / Lobo - PullRequest
0 голосов
/ 01 декабря 2009

Я пытаюсь выяснить, как получить доступ к свойствам CSS для узла DOM (в этом примере imageузлов), используя набор инструментов Cobra / Lobo. На данный момент у меня есть:

    UserAgentContext uacontext = new SimpleUserAgentContext();
    DocumentBuilderImpl builder = new DocumentBuilderImpl(uacontext);

    URL url = new URL(TEST_URI);
    InputStream in = url.openConnection().getInputStream();

    Reader reader = new InputStreamReader(in, "ISO-8859-1");
    InputSourceImpl inputSource = new InputSourceImpl(reader, TEST_URI);
    HTMLDocumentImpl d = (HTMLDocumentImpl) builder.parse(inputSource);
    HTMLCollection images = d.getImages();

    for (int i = 0; i < images.getLength(); i++) {

        HTMLElementImpl n = (HTMLElementImpl) images.item(i);
        AbstractCSS2Properties curr = n.getCurrentStyle();

        System.out.println("Image " + i + ": " + curr.getPropertyValue("background-color"));
    }

Теперь это, кажется, дает мне только напрямую установленные стили - не унаследованные или вычисленные стили. Как я могу получить их также?

Спасибо

1 Ответ

0 голосов
/ 01 декабря 2009

Полагаю, вам нужно использовать getComputedStyle метод Класс HTMLElementImpl .

...