Ich möchte die externe Schriftart WebSymbols
verwendenund ich habe es meine stylesheet.css-Deklaration
platziert %Vor%Meine stylesheet.css befindet sich in der Datei META-INF / resources / css / stylesheet.css. Ich habe Schriftdateien (eot, svg usw.) in das gleiche Verzeichnis geschrieben - META-INF / resources / css. Im Header meiner JSF-Seite habe ich Bezug auf dieses Stylesheet genommen:
%Vor%Aber anstelle von speziellen Symbolen aus der Schriftart bekam ich normalen Text. Alle anderen CSS-Stile funktionieren normal. Irgendeine Idee, wie man benutzerdefinierte Schriftart verwendet?
Meine stylesheet.css befindet sich in der Datei META-INF / resources / css / stylesheet.css
META-INF? Das ist also in einer JAR-Datei gebündelt, die wiederum in webapps /WEB-INF/lib
?
Unabhängig davon müssen Sie stattdessen den #{resource}
resolver verwenden, um Klassenpfadressourcen in die richtigen /javax.faces.resource
URLs aufzulösen.
Außerdem empfehle ich, einen zusätzlichen Pfad in den Ordner /resources
einzufügen, der dann den echten Bibliotheksnamen darstellen kann. Die library="css"
ist nämlich die falsche Verwendung der Ressourcenbibliothek. Es sollte keine spezifischen Ressourcentypen (CSS / JS / Bilder) repräsentieren, sondern ein echter allgemeiner Bibliotheksname. Zum Beispiel /common
. Sie können dann wie folgt auf das Stylesheet und die Ressourcen verweisen:
und
%Vor%