最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iconfont的三種使用方式詳解

 更新時(shí)間:2018年08月05日 16:40:04   作者:花落微涼夢(mèng)清幽  
這篇文章主要介紹了iconfont的三種使用方式,需要的朋友可以參考下

在我們項(xiàng)目中經(jīng)常要使用到iconfont,在此我們使用阿里巴巴矢量庫(kù)提供的icon圖標(biāo),此圖標(biāo)庫(kù)足夠?yàn)槲覀兲峁┐罅康膱D標(biāo),我們首先需要的事在阿里巴巴矢量圖標(biāo)庫(kù)新建一個(gè)自己的賬號(hào),并且新建一個(gè)項(xiàng)目,這個(gè)項(xiàng)目包含了你所有要用到的圖標(biāo)。我們需要選中需要的圖標(biāo)放到自己的項(xiàng)目中,并下載下來(lái)放到自己項(xiàng)目下的iconfont文件夾之下。(需要更新圖標(biāo)時(shí),下載包也需要重新下載更新)

方式一:使用symbol方式(本質(zhì)是用svg標(biāo)簽構(gòu)成的)

第一步:為了代碼更好的復(fù)用,我們封裝一個(gè)svg-icon組件,代碼如下:

<template>
 <svg :class="svgClass" aria-hidden="true">
  <use :xlink:href="iconName" rel="external nofollow" ></use>
 </svg>
</template>
<script>
export default {
 name: 'svg-icon',
 props: {
  iconClass: {
   type: String,
   required: true
  },
  className: {
   type: String
  }
 },
 computed: {
  iconName() {
   return `#icon-${this.iconClass}` // 注意:因?yàn)榇颂幗壎ǖ膕vgClass名已經(jīng)包含#icon,所以復(fù)制symbol名字事不需要名字的前綴了
  },
  svgClass() {
   if (this.className) {
    return 'svg-icon ' + this.className
   } else {
    return 'svg-icon'
   }
  }
 }
}
</script>
<style scoped>
.svg-icon {
 width: 1em;
 height: 1em;
 vertical-align: -0.15em;
 fill: currentColor;
 overflow: hidden;
}
</style>

第二步:在main.js中引入

import '@/assets/icons/iconfont.js' //symbol方式的相關(guān)文件
import '@/assets/icons/iconfont.css' // Unicode和fontclass方式的樣式包
import SvgIcon from '@/components/SvgIcon' // 使用icon組件
Vue.component('svg-icon', SvgIcon) // 引入全局組件,也可以在局部引入

第三步:使用

在自己需要用到的組件中:

<template>
 <div>
 <!--方式一:使用svg-->
 <svg-icon class="h1" icon-class="iconfontzhizuobiaozhunbduan35"></svg-icon>
 <svg-icon class="h1" icon-class="hekriconshebeidengpao"></svg-icon>
 <!--方式二:使用unicode-->
 <i class="iconfont unicode">&#xe695;</i>
 <i class="iconfont unicode">&#xe63d;</i>
 <!--方式三:使用iconfontclass-->
 <span class="iconfont icon-baojingliebiao classicon"></span>
 </div>
</template>
<script>
// import '@/assets/icons/iconfont.css'
</script>
<style>
  .h1{
 width:50px;
 height:50px;
 font-size: 100px;
 }
 .unicode{
 font-size: 30px;
 }
 .classicon{
  /* 可以自定義icon的顏色與大小 */
 font-size: 100px; 
 color:red;
 }
</style>

另外兩種使用方式是使用unicode和fontclass方式,如上面的代碼所示引入與使用

然后我們談?wù)勥@三種方式的優(yōu)缺點(diǎn)吧

unicode:

優(yōu)點(diǎn):

  • 兼容性最好,支持ie6+
  • 支持按字體的方式去動(dòng)態(tài)調(diào)整圖標(biāo)大小,顏色等等

缺點(diǎn):

  • 不支持多色圖標(biāo)
  • 在不同的設(shè)備瀏覽器字體的渲染會(huì)略有差別,在不同的瀏覽器或系統(tǒng)中對(duì)文字的渲染不同,其顯示的位置和大小可能會(huì)受到font-size、line-height、word-spacing等CSS屬性的影響,而且這種影響調(diào)整起來(lái)較為困難
  • 不直觀,看unicode碼很難分辨什么圖標(biāo)

fontclass:

  • 兼容性良好,支持ie8+
  • 相比于unicode語(yǔ)意明確,書寫更直觀。可以很容易分辨這個(gè)icon是什么。

symbol:

  • 支持多色圖標(biāo)了,不再受單色限制。
  • 支持像字體那樣通過(guò)font-size,color來(lái)調(diào)整樣式。
  • 支持 ie9+
  • 可利用CSS實(shí)現(xiàn)動(dòng)畫。
  • 減少HTTP請(qǐng)求。
  • 矢量,縮放不失真
  • 可以很精細(xì)的控制SVG圖標(biāo)的每一部分

綜上所述的一些特點(diǎn),個(gè)人比較推薦使用symbol或者fontclass的方式

總結(jié)

以上所述是小編給大家介紹的iconfont的三種使用方式,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

相關(guān)文章

最新評(píng)論

格尔木市| 北安市| 十堰市| 灵台县| 交口县| 罗源县| 武陟县| 北辰区| 舒兰市| 房产| 惠来县| 弥勒县| 大关县| 红原县| 临桂县| 湘阴县| 阜阳市| 凉城县| 乌什县| 贡觉县| 万年县| 大庆市| 海盐县| 麦盖提县| 莆田市| 沙湾县| 开平市| 太和县| 巴里| 洪雅县| 东至县| 基隆市| 屯留县| 镇康县| 镇坪县| 岚皋县| 进贤县| 玛沁县| 秦安县| 肇庆市| 新闻|