Wie lade ich Benutzer-CSS in einem WebKit WebView mit PyObjC?

9

Ich hätte gerne einen kleinen Browser, der mein eigenes CSS verwendet. Das Problem ist, dass CSS nicht geladen wird oder, ich denke, es lädt, aber ohne Wirkung.

Hier ist der vollständige Code (ich benutze keinen Interface Builder):

%Vor%

Der Code wird ohne Fehler ausgeführt. Drucke

%Vor%

aber es gibt keinen Effekt von meinem CSS in der WebView.

Ich habe verschiedene Lösungen wie das Hinzufügen eines Links zum DOM ausprobiert:

%Vor%

aber in jedem Fall funktioniert es nicht.

Ich möchte JavaScript nicht zum Laden von CSS verwenden.

Kann mir jemand sagen, was mit der Einstellung des Benutzer-CSS in meinem Code nicht stimmt?

    
Stanpol 28.08.2011, 14:57
quelle

1 Antwort

3

Apple dokumentiert nicht ordnungsgemäß, dass setUserStyleSheetLocation nur ein lokaler Pfad oder eine URL sein kann: URL. Qt erklärt dies in ihrer Dokumentation der entsprechenden Einstellung in QtWebKit:

Ссылка

  

Gibt den Speicherort eines Benutzer-Stylesheets an, das mit jedem Web geladen werden soll   Seite.

     

Der Speicherort muss entweder ein Pfad im lokalen Dateisystem sein oder a   Daten-URL mit UTF-8- und Base64-codierten Daten wie:

     

"Daten: text / css; Zeichensatz = utf-8; base64, cCB7IGJhY2tncm91bmQtY29sb3I6IHJlZCB9Ow =="

     

Hinweis: Wenn die base64-Daten nicht gültig sind, wird der Stil nicht angewendet.

    
David K. Hess 30.11.2011, 02:16
quelle