iconfont的幾種用法

在日常的開(kāi)發(fā)學(xué)習(xí)中 ,我們常常為字體圖標(biāo)而犯難,尤其對(duì)新手來(lái)說(shuō),下面介紹幾種icon的用法,
以阿里的iconfont圖標(biāo)庫(kù)(https://www.iconfont.cn/)為例。

  • 第一步 選擇自己喜歡的圖標(biāo) ,添加至自己的倉(cāng)庫(kù)


    添加倉(cāng)庫(kù)
  • 第二部 添加至項(xiàng)目 就可以愉快的玩耍了


    添加到項(xiàng)目

    總共有三種方式實(shí)現(xiàn) 字體圖標(biāo)


    image.png

unicode引用

特點(diǎn) :

  • 兼容性最好,支持ie6+,及所有現(xiàn)代瀏覽器。
  • 支持按字體的方式去動(dòng)態(tài)調(diào)整圖標(biāo)大小,顏色等等。
  • 但是因?yàn)槭亲煮w,所以不支持多色。只能使用平臺(tái)里單色的圖標(biāo),就算項(xiàng)目里有多色圖標(biāo)也會(huì)自動(dòng)去色。

使用步驟 :

  • 第一步:拷貝項(xiàng)目下面生成的font-face
@font-face {font-family: 'iconfont';
    src: url('iconfont.eot');
    src: url('iconfont.eot?#iefix') format('embedded-opentype'),
    url('iconfont.woff') format('woff'),
    url('iconfont.ttf') format('truetype'),
    url('iconfont.svg#iconfont') format('svg');
}
  • 第二步:定義使用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;}
  • 第三步:挑選相應(yīng)圖標(biāo)并獲取字體編碼,應(yīng)用于頁(yè)面
<i class="iconfont">&#x33;</i>

效果圖如下 以箭頭所示的兩個(gè)圖標(biāo)為例 :

image.png

具體 如下


unicode引用

這種方式 現(xiàn)在不推薦使用 因?yàn)椴恢С植噬?/p>

font-class引用

font-class是unicode使用方式的一種變種,主要是解決unicode書(shū)寫(xiě)不直觀,語(yǔ)意不明確的問(wèn)題。

與unicode使用方式相比,具有如下特點(diǎn):

  • 兼容性良好,支持ie8+,及所有現(xiàn)代瀏覽器。
  • 相比于unicode語(yǔ)意明確,書(shū)寫(xiě)更直觀??梢院苋菀追直孢@個(gè)icon是什么。
  • 因?yàn)槭褂胏lass來(lái)定義圖標(biāo),所以當(dāng)要替換圖標(biāo)時(shí),只需要修改class里面的unicode引用。
  • 不過(guò)因?yàn)楸举|(zhì)上還是使用的字體,所以多色圖標(biāo)還是不支持的。

使用步驟如下:

  • 第一步:拷貝項(xiàng)目下面生成的fontclass代碼:
//at.alicdn.com/t/font_8d5l8fzk5b87iudi.css
  • 第二步:挑選相應(yīng)圖標(biāo)并獲取類名,應(yīng)用于頁(yè)面:
<i class="iconfont icon-xxx"></i>

這種方法應(yīng)用比較廣泛


使用方式

具體效果 如下 :

font-class

symbol引用

這是一種全新的使用方式,應(yīng)該說(shuō)這才是未來(lái)的主流,也是平臺(tái)目前推薦的用法。相關(guān)介紹可以參考這篇文章 這種用法其實(shí)是做了一個(gè)svg的集合,與上面兩種相比具有如下特點(diǎn):

  • 支持多色圖標(biāo)了,不再受單色限制。
  • 通過(guò)一些技巧,支持像字體那樣,通過(guò)font-size,color來(lái)調(diào)整樣式。
  • 兼容性較差,支持 ie9+,及現(xiàn)代瀏覽器。
  • 瀏覽器渲染svg的性能一般,還不如png。

使用步驟如下:

  • 第一步:拷貝項(xiàng)目下面生成的symbol代碼:
//at.alicdn.com/t/font_8d5l8fzk5b87iudi.js
  • 第二步:加入通用css代碼(引入一次就行):
<style type="text/css">
    .icon {
       width: 1em; height: 1em;
       vertical-align: -0.15em;
       fill: currentColor;
       overflow: hidden;
    }
</style>
  • 第三步:挑選相應(yīng)圖標(biāo)并獲取類名,應(yīng)用于頁(yè)面:
<svg class="icon" aria-hidden="true">
    <use xlink:href="#icon-xxx"></use>
</svg>

應(yīng)用實(shí)例 如下 :


實(shí)際效果
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容