2012-10-01 62 views
15

我們最近開發了一個網站,該網站非常依賴Font Awesome作爲其設計的一部分。我們將標準實現與before:content及其提供的CSS一起使用。Font Awesome沒有出現在Internet Explorer 8中

由於某些原因,Font Awesome未在IE8中顯示。我花了好幾個小時來排除故障並嘗試各種修復程序,但都沒有運氣。

我:

  • 設置EOT的應用程序/ vnd.ms-fontobject
  • 設置OTF的MIME類型,TTF到應用程序/八位字節流
  • 執行的HTML5Shiv的MIME類型的所有CSS後已被加載。
  • 各種嘗試重新加載頁面加載

在這裏,CSS或DOM是網站:http://www.tetakere.org.nz - 的熱鏈接框是真棒字體的一個很好的例子

有沒有人有其他途徑的任何想法讓這個網站顯示Font Awesome?

回答

18

經過一些痛苦的故障排除後,我終於搞定了。

解決的辦法是將HTML5Shiv從<head>部分加載到</body>標記之前。

<!--[if lt IE 9]> 
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
<![endif]--> 
</body> 
+1

這爲我在IE7中修正了它,但不是8。 – Synchro

+1

它可能與字體加載之前的內容呈現有關。我也把'html5-shiv' AFTER FontAwesome解決了這個問題。 見http://stackoverflow.com/questions/9809351/ie8-css-font-face-fonts-only-working-for-before-content-on-over-and-sometimes。 – leesei

2

我並不需要html5shiv才能讓FontAwesome在IE8中工作。 This answer(重新創建.eot文件並替換舊文件)解決了我的問題。

2

我嘗試了一切,從修改我的Apache配置和.htaccess文件沒有運氣。在IE開發工具中,我偶然發現了「文檔模式」,默認情況下是IE7。正確

<meta http-equiv="X-UA-Compatible" content="IE=9"> 

現在IE 10和9格式我的網站,並正確顯示所有字體真棒圖標:所以經過一番研究,我發現這個元標記。然後

如果你仍然想IE 8 COMPAT你可以用這個啓動:

<meta http-equiv="X-UA-Compatible" content="IE=8"> 

希望幫助...

0
  1. 添加到了htaccess的。「BrowserMatch MSIE最佳標準的支撐頭中設置X-UA-兼容IE = 8 ENV =最佳標準的支持」
  2. 試圖重新轉換EOT字體
  3. DOC密實模式chnage
  4. 試圖usleep功能
  5. setInterval的JS
  6. 添加谷歌HTML5腳本
  7. 在身體部位
  8. 調用CSS的IE8
  9. 附加數據圖標類
  10. 廣告僞元素JS
  11. 加入

    .sass和.LESS CSS

    文件時個

  12. 加載png格式&在CSS SVG過濾
  13. 檢查字體類型權限在服務器

但最後的作品

快樂編碼

9

我知道這是一個老問題,但我有很多的麻煩,這個問題並沒有這些答案的幫助除了最後一個。

改變了頭......

什麼工作對我來說是:

<meta http-equiv="X-UA-Compatible" content="IE=edge"> 

這還曾(最後答案,我簡稱):

<meta http-equiv="X-UA-Compatible" content="IE=8"> 

另外,我看了( Force IE compatibility mode off using tags),您應該將該元標記置於所有其他元標記之上並且在任何條件IE語句之前;否則元標記將失效。