所谓字体图标,顾名思义就是图标以字体的形式存在,可以利用 font-size、color 对字体图标的大小和颜色进行渲染。将小图标集中放到字体库里,利用css3 @font-face 引用图标,不仅有利用图标的集中化管理,也有利于搜索引擎的优化。

图标建议使用 iconfont.cn(阿里巴巴矢量图标库),该网站的一些功能给前端工作提供了很多方便。在该网站的代码应用页面讲解了图标在web端的使用,里面涉及到三种引用方式,这篇文章将着重讲解第二种方式——font-class引用。

一、font-class特点

在 iconfont.cn 里是这样介绍font-class的特点的:

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

二、font-class使用

1、登录 iconfont.cn ,方便管理项目。

2、搜索图标名,如“首页”,选择一个图标,点击“添加入库”。如图:

3、点击右上角购物车图标,进入已选图库。如图:

4、选择“添加至项目”,如果没有项目就先添加一个项目,然后选择一个项目,点击“确定”。如图:

5、确定之后进入我的项目页面,可以看到引用方式默认是Font class, 点击“下载至本地”,将压缩包下载到本地。

6、下载后的文件目录如图:

对于我们目前来说,有用的文件只有:

编辑器打开iconfont.css文件:

解释一下这个文件内容:

(1)@font-face 引用四种格式的字体图标文件,目的是为了兼容不同浏览器;

(2).iconfont 所有图标的公共样式;

(3).icon-shouye “首页”图标的引用类名;

再来看一下html文件是怎么引用图标的:

一目了然,红色框里的就是引用首页这个图标的方法。so,引用图标时,都要有.iconfont这个公共样式类名,再有就是这个图标的引用类名。

浏览器运行html文件,“首页”图标就渲染到了页面上。通过样式更改color、font-size,图标的颜色、大小就会发生变化。如图:

三、编辑图标

鼠标移入图标上,显示4个图标按钮,分别是 添加入库、编辑图标、删除图标、下载图标,点击 编辑图标,进入图标详情弹框:

讲解:(1)调整图标大小

   (2)编辑图标名称

     (3)编辑图标字符编码(有默认编码)

四、添加图标

往项目里添加新图标的方法和上面说的步骤一样,有几点需要说明一下。

1、将压缩包下载到本地后,只需要把其中的 iconfont.css、.eot、.svg、.ttf、.woff五个文件替换掉之前的文件即可。

2、iconfont.css的内容也可以通过输入链接查看:

点击红字获取新链接,浏览器打开链接,复制新图标代码,再粘贴到iconfont.css文件里到即可。如图:

五、小结

1、编辑图标,调整图标大小至容器的边框,这样是为了当图标字体大小一样时,显示在页面上的图标大小一样。(之前项目的经验:两个图标font-size值一样,显示在页面上却不一样大小,后来调整了图标的大小才解决了问题)

2、当图标很多时,为了方便查找图标代码,可以将图标代码按字母表排列。如图:

欢迎留言~

@font-face 字体图标的应用的更多相关文章

  1. Font Awesome字体图标

    1.什么是字体图标字体图标是一个包含许多图标的字体库.可以理解为一种特殊的字体,只不过里面包含的都是图标. 2.Font Awesome图标字体库Font Awesome是目前最受欢迎最全面的图标字体 ...

  2. Awesome图标 | 如何在某些编辑软件中使用Font Awesome字体图标

    文章目录 Font Awesome 字体图标 在某些编辑软件中使用 Font Awesome 字体图标 Font Awesome 为您提供可缩放矢量图标,它可以被定制大小.颜色.阴影以及任何可以用 C ...

  3. (22)bootstrap 初识 + Font Awesome(字体图标库)

    bootstrap作用就是简化布局 bootstrap是基于JQ的,所以内部代码使用的是jq语法 所以要使用bs,必须先倒入 1.head标签内倒入bs的css文件  <link rel=&qu ...

  4. 在nuxt中引入Font Awesome字体图标库

    介绍 在element-ui框架中提供了一些图标样式,但是种类比较少,所以在这里提供一套更完善的字体图标库Font Awesome(官方文档),下面就开始介绍如何在一个nuxt项目中使用这套字体库. ...

  5. CSS3使用Font Awesome字体图标的控件样例(按钮,工具栏,输入框)

    按钮上加入font awesome图标,用原生的input button标签无法实现,查看网上的只能通过<a><li></li></a>实现此功能,通过 ...

  6. CSS伪元素:before/CSS伪元素:before/:after content 显示Font Awesome字体图标:after content 显示Font Awesome字体图标

    HTML <a href="javascript:volid(0);"><i class="icon-table"></i> ...

  7. Font Awesome字体图标的 用法, 很简单

    http://fontawesome.dashgame.com/ 上面是 官网,  可下载,也可以CDN. 1...  加载 2...  用法

  8. 通过字体代替图片优化,如何使用Font Awesome字体图标?

    博客搬迁,给你带来的不便敬请谅解! http://www.suanliutudousi.com/2017/10/17/%E9%80%9A%E8%BF%87%E5%AD%97%E4%BD%93%E4%B ...

  9. iconfont字体图标的使用方法--超简单!

    我之前因为项目用bootstrap比较多,所以使用font awesome字体图标比较多,后来接触到了iconfont,发现想要的什么图标都有,还可以自定义图标,非常强大!之前看了一波教程,觉得繁琐, ...

  10. iconfont阿里字体图标的使用方法

    我们在做web项目的时候,之前比较常用的是bootstrap,所以使用font awesome字体图标比较多,无意中在一个项目中接触到了iconfont,发现想要的什么图标都有,还可以自定义图标,非常 ...

随机推荐

  1. (转)base64编码是怎么工作的?

    按:在PHP中级班的课堂上,有位同学问这样一个问题:“我在用 base64_encode 对用户名进行编码时,会出来等号,是不是可以去掉?”跟我来看完这篇文章,答案即揭晓. 1: 为什么需要base6 ...

  2. mongodb常用操作命令(待续)

    1. 开启mongodb命令 >mongo 默认链接到test数据库 2. 显示所有数据库>show dbs 3.切换数据库>use 数据库名 4.查找数据库里某张表的所有成员> ...

  3. 存储过程中SELECT INTO的使用

    在MySQL存储过程中使用SELECT …INTO语句为变量赋值: 用来将查询返回的一行的各个列值保存到局部变量中. 要求: 查询的结果集中只能有1行. SELECT col_name[,...] I ...

  4. Oracle存储过程入参传入List集合的小例子

    第一步:创建一个对象类型 create or replace type STUDENT as object( id ), name ), age ) ); / 第二步:创建一个数组类型 (任意选择下面 ...

  5. ScrollView 定位

    1.固定到顶部scroll_view.requestFocusFromTouch();scroll_view.setScrollX(0); 2.固定到指定位置 int[] location = new ...

  6. win10找回Windows照片查看器

  7. IOS设计模式第五篇之装饰设计模式的代理设计模式

    版权声明:原创作品,谢绝转载!否则将追究法律责任. 代理: 另一个装饰设计模式,代理,是一个代表或者协调另一个对象的行为机制.例如当你用一个tableView,你必须实现他里面的一个tableView ...

  8. Linux命令 dmesg:分析内核产生的信息

    案例一 输出所有的内核开机时的信息 zh@zh:~$dmesg | more 案例二 查找开机的时候硬盘的相关信息

  9. php sqlserver及xdebug扩展配置

    ;extension=php_bz2.dllextension=php_curl.dll;extension=php_fileinfo.dll;extension=php_ftp.dll;extens ...

  10. router之switch

    比较路由中有无switch的区别: 代码一: <Router history={history}> <Route exact path="/" component ...