我有典型的時尚JSF項目設置:<H:outputStylesheet>和相關資料,
myproject
|-- src/main/webapps
| |-- resources
| | |-- css
| | | |-- 3rdparty.css
| | |
| | |-- fonts
| | |
| | |-- myspecialfont.woff
| |
然後在我的JSF HTML:
<h:outputStylesheet name="3rdparty.css" library="css"/>
這工作得很好,因爲我可以如果我需要升級,請保持目錄一致。
然而,在這種情況下,3rdparty.css文件中包含相對引用:
@font-face {
font-family: 'Lato';
src: url('../fonts/myspecialfont.woff');
}
當h:outputStylesheet構建URI使用mywebapp/javax.faces.resource/3rdparty.css
這將打破,因爲這條道路里面的相對引用將現請參閱mywebapp/fonts/myspecialfont.woff
。
有沒有一種很好的方法來保持這些由JSF引用的本地託管的第三方庫來處理這種相對引用而不訴諸手動更改CSS?
嘗試'URL(#{} request.contextPath /資源/字體/ my.woff' – SRy
是的,這會工作,但我試圖避免通過編輯第三方CSS文件保持一個簡單的更新路徑 – TemarV