iconfont

进入阿里的矢量图标库,进入到我的项目(图标库)中,可以看到如下页面

根据不同的使用方式(Unicode、Font class、Symbol)可将对应文件下载至本地或直接在项目中引入

方式一:Unicode

Unicode是字体在网页端最原始的应用方式,特点是:

  • 兼容性最好,支持ie6+,及所有现代浏览器
  • 支持按字体的方式去动态调整图标大小,颜色等等
  • 不支持多色。只能使用平台里单色的图标,就算项目里有多色图标也会自动去色

注意:新版iconfont支持多色图标,这些多色图标在Unicode模式下将不能使用,如果有需求建议使用Symbol的引用方式

使用步骤如下:

a) 拷贝项目下面生成的font-face,如果想要深入了解font-face属性,可以点击这里还有here

@font-face {
font-family: 'iconfont'; /* project id 1150064 */
src: url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.eot');
src: url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.eot?#iefix') format('embedded-opentype'),
url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.woff2') format('woff2'),
url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.woff') format('woff'),
url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.ttf') format('truetype'),
url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.svg#iconfont') format('svg');
}

b) 定义使用iconfont的样式

.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

若在开头直接引入在线链接,则不必重复写上述两步

<link rel="stylesheet" type="text/css" href="http://at.alicdn.com/t/font_1150064_q0lnvx1hi7d.css">

该.css文件包括上诉内容

@font-face {font-family: "iconfont";
src: url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.eot?t=1555591814941'); /* IE9 */
src: url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.eot?t=1555591814941#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMAAAsAAAAABrwAAAKyAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCCfgqBOIFJATYCJAMICwYABCAFhG0HMBv9BcgekiSICA8OUBABCBBFUC1bz95+SiQHKkQZY3lUUjiyQxgsCixKITEWBS4Lg/tJ2wx1mwPXER8rJpjnwcPl88gGFR3ro8omfrtsKpPXZf3/XE7vrgLKovmBclpz0MajXoDx1gDH3GQFFHLD2E0EDmEzgboxQryDupYekCQDvQJx67SbQVLOK8tWoiqUayZm8SReNT2kS8Aj/378kUcSSakABh6e19pAxSfvMxX3/QgdRfiAoE4vocA8IBNHtdFDscIix6pH44wD+2oVfKZ+n8+gerFXShB/HUptgmk1lvgMLMFlSeXfcWoCWW1cAZzOsDC50263bm5uem+ue65vFbd33ed3yuuUXRLdCVX0FgxXjy3NzuX3To1vRgsU04rJMWqObo7rz4h8jap4fdc5ikxl21SnoAvOS+UNkqbMtQ+BslDaORq7//KHRKPaYaOxY8XeS+zorjSg03LS0c/0DXUjkcgxP8jfNE0XbYsy70LRe8If5h+rNlABxIuzmGfH+knp+b9rzCyZ1Mjg7X1iiKuzfnagemBb8B15PQtyKACKdCdczZasZNwSKtt26APOAa9jlcNXmwxVw9dsrxhNoVA1jmbSPJQ0LEBZ1TbUzamf3jCIiBW5hlmDCoSuXUjaXqHQdYVm0guUjPiHsm7EQt1R5C7YMBnOlGqCzBTZoCUMnVbsY5CBpoj0LmTnPGaSFXCqAhHWGYAysbSYqEc+ROYYwgbsckoZyBDshXXKdsjjwdBPsAtZqdhBqb9IImHq3iS2Yi9IsY9AzCjEBrIIg5ysMB+GlqZSSp/vgthxPMxIC27AqoAQLGfzkIyYtAdaL/X1wt3LNawAOzmKYkAMAvOC6hQz4oFRDPLXt3NBrCgxx4iwXxGJVozpKxWvL/d+3TKoA6oUsFWhfIc5lsMAAAAA') format('woff2'),
url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.woff?t=1555591814941') format('woff'),
url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.ttf?t=1555591814941') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
url('//at.alicdn.com/t/font_1150064_q0lnvx1hi7d.svg?t=1555591814941#iconfont') format('svg'); /* iOS 4.1- */
} .iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
} .iconsousuo:before {
content: "\e601";
} .iconsousuo1:before {
content: "\e602";
}

c) 挑选相应图标并获取字体编码,应用于页面

<p><i class="iconfont"></i>Unicode</p>
是字体编码,可以在阿里矢量图标库的网站上,进入我的项目查看

方式二:Font class

FontClassUnicode使用方式的一种变种,主要是解决Unicode书写不直观,语意不明确的问题。与Unicode使用方式相比,具有如下特点:

  • 兼容性良好,支持ie8+,及所有现代浏览器
  • 相比于Unicode语意明确,书写更直观。可以很容易分辨这个icon是什么
  • 因为使用class来定义图标,所以当要替换图标时,只需要修改class里面的unicode引用即可
  • 因为本质上还是使用的字体,所以多色图标还是不支持

使用步骤如下:

a) 引入font class在线链接

<link rel="stylesheet" type="text/css" href="http://at.alicdn.com/t/font_1150064_q0lnvx1hi7d.css">

b) 挑选相应图标并获取类名,应用于页面

<p><i class="iconfont iconsousuo"></i>FontClass</p>
iconsousuo可以在阿里矢量图标库的网站上,进入我的项目查看

方式三:symbol

这是一种全新的使用方式,应该说这才是未来的主流,也是阿里矢量图标库平台目前推荐的用法,但是在前端,新技术要向老设备看齐,所以你懂得。 这种用法其实是做了一个svg的集合,与另外两种相比具有如下特点:

  • 支持多色图标了,不再受单色限制
  • 通过一些技巧,支持像字体那样,通过font-size,color来调整样式(对于前两种也是同样适用的,fontsize改变大小,color改变颜色)
  • 兼容性较差,支持 ie9+,及现代浏览器
  • 浏览器渲染svg的性能一般,还不如png

使用步骤如下:

a) 引入Symbol在线链接

<script type="text/javascript" src="http://at.alicdn.com/t/font_1150064_q0lnvx1hi7d.js"></script>

b) 加入通用css代码(引入一次就行)

.icon {
width: 1em;
height: 1em;
vertical-align: -0.15em;
fill: currentColor;
overflow: hidden;
}

c) 挑选相应图标并获取类名,应用于页面

<svg class="icon" >
<use xlink:href="#iconsousuo"></use>
</svg>
解决symbol无法通过color改变图标颜色问题:

原因:

当从阿里图库中图标被添加至项目,如果编辑过项目图标的颜色或者图标本身是有颜色的,那么在通过symbol.js获取图标时会在svg的path中增加 fill 属性,导致无法更改颜色。

解决方法:

在上传图标时选择去除颜色并提交

若已经上传可选择批量去色

总的例子

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>iconfont</title>
<link rel="stylesheet" type="text/css" href="http://at.alicdn.com/t/font_1150064_q0lnvx1hi7d.css"><!-- fontclass -->
<style type="text/css"> .icon {
width: 1em;
height: 1em;
vertical-align: -0.15em;
fill: currentColor;
overflow: hidden;
}
p{
color: #bfa;
}
</style>
<script type="text/javascript" src="http://at.alicdn.com/t/font_1150064_q0lnvx1hi7d.js"></script><!-- Symbol -->
</head>
<body>
<div style="width: 100%;text-align: center;background: #000;padding: 20px 0;">
<p><i class="iconfont"></i>Unicode</p>
<p><i class="iconfont iconsousuo"></i>FontClass</p>
<p style="font-size: 3em;">
<svg class="icon" >
<use xlink:href="#iconsousuo1"></use>
</svg>
Symbol
</p><!-- 去色-->
<p style="font-size: 3em;">
<svg class="icon" >
<use xlink:href="#iconsousuo"></use>
</svg>
Symbol
</p><!-- 多色 -->
</div>
</body>
</html>

效果:

SVG

inconfont的使用的更多相关文章

  1. inconfont 字体库应用

    先去注册个号码,好像只可以用新浪微博登录哈,搞一个微博去. 第一就是点上面图标库,选择官方和所有都行. 恩接着点一个图标,他就自己跑到 第二个按钮哪里去了,在点第二个按钮,会出来一个创建项目,随便创建 ...

  2. python Bootstarp框架和inconfont、font-awesome使用

    http://www.bootcss.com/ http://www.runoob.com/bootstrap/bootstrap-panels.html  查找基本的没问题 https://www. ...

  3. Bootstrap框架 inconfont font-awesome

    Bootstrap框架和inconfont.font-awesome使用 iconfont的使用:https://www.cnblogs.com/clschao/articles/10387580.h ...

  4. day 49 Bootstrap框架和inconfont、font-awesome使用

    Bootstrap框架和inconfont.font-awesome使用   iconfont的使用:https://www.cnblogs.com/clschao/articles/10387580 ...

  5. Bootstrap框架和inconfont、font-awesome使用

    iconfont的使用:https://www.cnblogs.com/clschao/articles/10387580.html Bootstrap介绍 Bootstrap是Twitter开源的基 ...

  6. reactjs 项目使用 iconfont 小图标以及使用带颜色 inconfont 小图标

    在 reactjs 项目中是所有小图标目前主要分为两类使用方式,第一类通过 CSS 引入的方式使用,第二类使用 JS 的方式引入使用. 注册-登录-建立项目-选中图标添加到购物车-添加至项目-下载到本 ...

  7. 浅谈字体小图标font awesome,iconfont,svg各自优缺点

    三种都是矢量图(即放大不失真),但是个自又有个自的优缺点, 1.font awesome: 优点:相对比较简单,查看官网看例子基本上都会用 (http://www.bootcss.com/p/font ...

  8. 老师的blog整理 .网络编程部分 .网络编程部分 前端部分 django基础部分

    老师的blog整理 python基础部分: 宝哥blog: https://www.cnblogs.com/guobaoyuan/ 开哥blog: https://home.cnblogs.com/u ...

  9. 老师的blog整理

    python基础部分: 宝哥blog: https://www.cnblogs.com/guobaoyuan/ 开哥blog: https://home.cnblogs.com/u/Neeo 女神笔记 ...

随机推荐

  1. CLR 无法从 COM 上下文 0x208f68 转换为 COM 上下文 0x2090d8,这种状态已持续 60 秒

    问题: CLR 无法从 COM 上下文 0x208f68 转换为 COM 上下文 0x2090d8,这种状态已持续 60 秒.拥有目标上下文/单元的线程很有可能执行的是非泵式等待或者在不发送 Wind ...

  2. 让windows10的右键菜单既显示传统cmd又显示powershell

    在windows10的资源管理器中,按住shift点击右键,只显示 open powershell window here,却没有传统的cmd 解决方法就是修改注册表: HKEY_LOCAL_MACH ...

  3. Vuex 2.0 深入简出

    最近面试充斥了流行框架Vue的各种问题,其中Vuex的使用就相当有吸引力.下面我就将自己深入简出的心得记录如下: 1.在vue-init webpack project (创建vue项目) 2.src ...

  4. php 图片添加文字,水印

    因为工作需求,用到这个,网上找了很多,也没有找到好的方式,最后找到这种感觉比较简单的方式,记录下来,以备后用.   $im = imagecreatefrompng("img/yyk_bg. ...

  5. socket的原理和实验

    1.socket原理 根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认. (1)服务器监听:是服务器端套接字并不定位具体的客户端套接 ...

  6. 高校表白APP-冲刺第四天

    第四天,我们进行了团队的的四次会议. 一.任务: 昨天任务:完成登录界面注册界面修改密码界面. 今日任务:完成跳转,并解决闪退问题. 明日任务:连接本地数据库,进行APP的第一次登陆. 二.遇到的困难 ...

  7. 解决ssh连接问题2

    ssh远程出现问题shell request failed on channel 0 1.修改/etc/security/limits.conf ssh_exchange_identification ...

  8. hiho一下 第206周

    题目1 : Guess Number with Lower or Higher Hints 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 There is a game ...

  9. Spark大型电商项目实战-及其改良(3) 分析sparkSQL语句的性能影响

    之前的运行数据被清除了,只能再运行一次,对比一下sparkSQL语句的影响 纯SQL的时间 对应时间表 th:first-child,.table-bordered tbody:first-child ...

  10. SCOI 2019 划水记

    (此处不应有目录,爆零的过程得慢慢看) 鸽子来更新游记了 orz UESTC. Day -1 两场傻逼信心考试都没AK. 第一场真的气,一个边界觉得是i - 1,然后不知道为啥改成了i,挂了6个点,然 ...