【CSS】iconfont的使用

說到瀏覽器對@font-face的兼容問題,這裏涉及到一個字體format的問題,由於不一樣的瀏覽器對字體格式支持是不一致的,這樣你們有必要了解一下,各類版本的瀏覽器支持什麼樣的字體,前面也簡單帶到了有關字體的幾種格式,下面我就分別說一下這個問題,讓你們內心有一個概念:css

1、TureTpe(.ttf)格式:html

.ttf字體是Windows和Mac的最多見的字體,是一種RAW格式,所以他不爲網站優化,支持這種字體的瀏覽器有【IE9+,Firefox3.5+,Chrome4+,Safari3+,Opera10+,iOS Mobile Safari4.2+】;css3

2、OpenType(.otf)格式:web

.otf字體被認爲是一種原始的字體格式,其內置在TureType的基礎上,因此也提供了更多的功能,支持這種字體的瀏覽器有【Firefox3.5+,Chrome4.0+,Safari3.1+,Opera10.0+,iOS Mobile Safari4.2+】;chrome

3、Web Open Font Format(.woff)格式:瀏覽器

.woff字體是Web字體中最佳格式,他是一個開放的TrueType/OpenType的壓縮版本,同時也支持元數據包的分離,支持這種字體的瀏覽器有【IE9+,Firefox3.5+,Chrome6+,Safari3.6+,Opera11.1+】;svg

4、Embedded Open Type(.eot)格式:字體

.eot字體是IE專用字體,能夠從TrueType建立此格式字體,支持這種字體的瀏覽器有【IE4+】;優化

5、SVG(.svg)格式:網站

.svg字體是基於SVG字體渲染的一種格式,支持這種字體的瀏覽器有【Chrome4+,Safari3.1+,Opera10.0+,iOS Mobile Safari3.2+】。

這就意味着在@font-face中咱們至少須要.woff,.eot兩種格式字體,甚至還須要.svg等字體達到更多種瀏覽版本的支持。

爲了使@font-face達到更多的瀏覽器支持,Paul Irish寫了一個獨特的@font-face語法叫Bulletproof @font-face,實現的步驟以下:

第一步:使用font-face聲明字體,要使用css3的@font-face引入字體,包括字體的eot  ttf  woff  svg格式,以及相應的format樣式,分別對應embedded-opentype、truetype、woff、svg。

@font-face {font-family: 'iconfont';
    src: url('iconfont.eot'); /* IE9*/
    src: url('iconfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('iconfont.woff') format('woff'), /* chrome、firefox */
    url('iconfont.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
    url('iconfont.svg#iconfont') format('svg'); /* iOS 4.1- */
}

第二步:定義使用iconfont的樣式

.iconfont{
    font-family:"iconfont" !important;
    font-size:16px;font-style:normal;
    -webkit-font-smoothing: antialiased;/*字體清除鋸齒效果*/
    -webkit-text-stroke-width: 0.2px;/*文本外邊框大小*/
    -moz-osx-font-smoothing: grayscale;}

第三步:挑選相應圖標並獲取字體編碼,應用於頁面

<i class="iconfont">&#x33;</i>

阿里矢量圖標庫:http://www.iconfont.cn/

圖標的下載和使用:

1.首先在 Iconfont-阿里巴巴矢量圖標庫上面將你須要的圖標點擊購物車按鈕加入「暫存架」
2.選擇完全部要用的圖標後「存儲爲項目」,給它命名。而後在「圖標管理」-「圖標應用項目」中找到這個項目。
3. 獲取在線連接,把裏面的代碼複製到CSS中
 
 
3.在HTML中須要使用到圖標時,使用iconfont類名。
<i class="iconfont">&#xe604;</i>     <!--裏面寫上你想用的圖標下面的Unicode-->

4.而後能夠經過控制iconfont類的屬性改變圖標的樣式

.iconfont{
    font-family:"iconfont";
    font-size:16px;
    font-style:normal;
    -webkit-font-smoothing: antialiased;
        -webkit-text-stroke-width: 0.2px;
        -moz-osx-font-smoothing: grayscale; 
        padding-left:20px
}
就能夠在頁面中引用和修改了。
 
補充:這些圖標也能夠 下載到本地使用
圖標都加入暫存架後選擇「下載到本地」,會獲得如下幾個文件:
瀏覽器打開三個demo_xxx.html可使用步驟,選擇一種方法使用便可;
下載使用的一個缺點是添加圖標的話要從新把全部圖標再下載一遍覆蓋原來的文件,若是是在線連接只要從新生成一次連接就行了。

參考連接: https://www.zhihu.com/question/25952487/answer/71917554
相關文章
相關標籤/搜索