如何將 Font Awesome 與 JSF 整合並解決字體檔案問題?
將Font Awesome 與JSF 整合:解決字體檔案問題
將Font Awesome 整合到JSF 時,您可能會遇到瀏覽器顯示空方塊而不是圖標的問題。當 CSS 檔案使用相對路徑引用字型檔案時,由於 JSF 用於資源處理的修改路徑而無法解析,則會出現此錯誤。
了解問題
預設的 Font Awesome CSS 檔案使用相對路徑(如 ../fonts/)引用字體檔案。但是,當您使用
解決方案:修改CSS 引用
要解決此問題,您需要編輯CSS 檔案並替換相關字體檔案引用使用#{resource} EL 映射和適當的庫和資源名稱進行絕對引用。例如,在以下結構中:
WebContent |-- resources | `-- font-awesome | |-- css | | |-- font-awesome.css | | `-- font-awesome.min.css | `-- fonts | |-- fontawesome-webfont.eot | |-- fontawesome-webfont.svg | |-- fontawesome-webfont.ttf | |-- fontawesome-webfont.woff | `-- fontawesome-webfont.woff2
如下編輯CSS 檔案:
<code class="css">@font-face { font-family: 'FontAwesome'; src: url("#{resource['font-awesome:fonts/fontawesome-webfont.eot']}&v=4.3.0"); src: url("#{resource['font-awesome:fonts/fontawesome-webfont.eot']}&#iefix&v=4.3.0") format('embedded-opentype'), url("#{resource['font-awesome:fonts/fontawesome-webfont.woff2']}&v=4.3.0") format('woff2'), url("#{resource['font-awesome:fonts/fontawesome-webfont.woff']}&v=4.3.0") format('woff'), url("#{resource['font-awesome:fonts/fontawesome-webfont.ttf']}&v=4.3.0") format('truetype'), url("#{resource['font-awesome:fonts/fontawesome-webfont.svg']}&v=4.3.0#fontawesomeregular") format('svg'); font-weight: normal; font-style: normal; }</code>
Mime 類型對應和JSF1091 警告
您可能還會遇到JSF1091如果某些檔案類型沒有mime 類型映射,則會發出警告。例如,SVG 和 WOFF2 檔案。要解決此問題,請將以下mime 映射新增至web.xml:
<code class="xml"><mime-mapping> <extension>eot</extension> <mime-type>application/vnd.ms-fontobject</mime-type> </mime-mapping> <mime-mapping> <extension>otf</extension> <mime-type>font/opentype</mime-type> </mime-mapping> <mime-mapping> <extension>svg</extension> <mime-type>image/svg+xml</mime-type> </mime-mapping> <mime-mapping> <extension>ttf</extension> <mime-type>application/x-font-ttf</mime-type> </mime-mapping> <mime-mapping> <extension>woff</extension> <mime-type>application/x-font-woff</mime-type> </mime-mapping> <mime-mapping> <extension>woff2</extension> <mime-type>application/x-font-woff2</mime-type> </mime-mapping></code>
使用OmniFaces 的替代方法
如果您使用OmniFaces,則可以安裝OmniFaces UnmappedRedlersSeret映射以自動處理丟失的mime 類型映射。但是,在這種情況下,您需要引用字體CSS 檔案而不使用函式庫屬性:
<code class="xml"><h:outputStylesheet name="font-awesome/css/font-awesome.min.css" / ></code>
其他資源
- [How to use Font Awesome from webjars.org with JSF](https://stackoverflow.com/questions/21419280/how-to-use-font-awesome-from-webjars-org-with-jsf)
以上是如何將 Font Awesome 與 JSF 整合並解決字體檔案問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

您是否曾經在項目上需要一個倒計時計時器?對於這樣的東西,可以自然訪問插件,但實際上更多

在元素個數不固定的情況下如何通過CSS選擇第一個指定類名的子元素在處理HTML結構時,常常會遇到元素個數不�...

關於Flex佈局中紫色斜線區域的疑問在使用Flex佈局時,你可能會遇到一些令人困惑的現象,比如在開發者工具(d...

格子呢是一塊圖案布,通常與蘇格蘭有關,尤其是他們時尚的蘇格蘭語。在Tartanify.com上,我們收集了5,000多個格子呢
