Anwenden der CSS-Datei auf JavaFX WebView

8

Ich versuche eine CSS-Datei auf ein JavaFX-WebView-Objekt anzuwenden. Von dem, was ich gelesen habe, sollte dies den Trick machen, aber offensichtlich fehlt mir etwas, weil das WebView ohne Styling anzeigt.

%Vor%

Meine CSS-Datei sieht folgendermaßen aus:

%Vor%     
ksnortum 25.09.2015, 13:39
quelle

2 Antworten

18

James_D hat bereits in seiner Antwort erklärt, wie man "JavaFx CSS" in "HTML CSS" umwandelt, aber es könnte sein bequemer zu verwenden WebEngine.setUserStylesheetLocation , um ein Stylesheet zu erstellen, das das CSS enthält:

%Vor%

style.css enthält den CSS-Code:

%Vor%     
fabian 17.12.2015, 16:35
quelle
10

Ihr Code wendet CSS auf den JavaFX WebView node an; Sie versuchen, CSS auf das HTML-Dokument anzuwenden, das in WebView angezeigt wird. Da die Webansicht keine JavaFX-Knoten mit einem beliebigen Text enthält, hat -fx-font-family keine Auswirkung, und der Hintergrund der HTML-Seite verdeckt den Hintergrund der WebView, sodass -fx-background-color nicht sichtbar ist.

Um das zu tun, was Sie wollen, müssen Sie das DOM des geladenen Dokuments bearbeiten und (Standard, HTML-anwendbares) CSS darauf anwenden. Das würde ungefähr so ​​aussehen:

%Vor%

Bearbeiten: Siehe auch @ fabians Antwort, die in den allermeisten Anwendungsfällen viel sauberer und vorzuziehen ist.

    
James_D 25.09.2015 15:40
quelle

Tags und Links