什么?Iconfont终于可以支持彩色图标了
如果你对iconfont有所了解,那你一定对这次iconfont做出的更新产生兴趣。没错,iconfont目前已经升级为iconfont+,并且能够支持大家都很期待的彩色图标。 之前,大家也以文字的形式实现过网页中的图标和特殊字符,现在,使用全新的彩色图标一定更能体现
symbol引用: 这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。相关介绍可以参考这篇文章 这种用法其实是做了一个svg的集合,与另外两种相比具有如下特点: 支持多色图标了,不再受单色限制。 通过一些技巧,支持像字体那样,通过font-size,color来调整样式。 兼容性较差,支持 ie9+,及现代浏览器。 浏览器渲染svg的性能一般,还不如png。 这种全新的使用方式,据官网介绍说是做了一个svg的集合,SVG(Scalable Vector Graphics)可缩放矢量图形,SVG具有什么特点呢? SVG特点: 1.任意放缩。(用户可以任意缩放图像显示,而不会破坏图像的清晰度、细节等。) 2.文本独立。(SVG图像中的文字独立于图像,文字保留可编辑和可搜寻的状态。也不会再有字体的限制,用户系统即使没有安装某一字体,也会看到和他们制作时完全相同的画面。) 3.较小文件。(总体来讲,SVG文件比那些GIF和JPEG格式的文件要小很多,因而下载也很快。) 4.超强显示效果。(SVG图像在屏幕上总是边缘清晰,它的清晰度适合任何屏幕分辨率和打印分辨率。) 5.超级颜色控制。(SVG图像提供一个1 600万种颜色的调色板,支持ICC颜色描述文件标准、RGB、线X填充、渐变和蒙版。) 由于svg的格式优点是基于xml可扩展标记语言,是一个XML文件,而且SVG是被设计用于互联网,所以通过Javascript和DOM访问它就是最重要的应用模式。通过Javascript和DOM可以动态地修改HTML,同样也可以在浏览器中动态地创建、修改和删除图片。 因此在网页中使用svg与其他图像格式相比(比如 JPEG 和 GIF)的优势在于: SVG 图像可通过文本编辑器来创建和修改 SVG 图像可被搜索、索引、脚本化或压缩 SVG 是可伸缩的 SVG 图像可在任何的分辨率下被高质量地打印 SVG 可在图像质量不下降的情况下被放大 而浏览器的支持情况,iconfont官网也有说明: Internet Explorer 9、Firefox、Opera、Chrome 以及 Safari 支持内联 SVG。Internet Explorer 8或更早版本,可通过安装Adobe SVG Viewer以支持SVG。 iconfont官网描述浏览器渲染svg的性能一般,还不如png,实测了一下做了几个彩色小icon,现代浏览器对svg渲染其实也相当不错了。而且iconfont平台也是推荐这种全新的使用方式,现在互联网技术迅猛发展,相信不久的将来这种使用方式会是未来的主流。 介绍了那么多,那么来做个小案例体验一下。 首先还是到iconfont官网,这次找几个彩色的图标:
网页导航栏多色图标库,点进去会发现很多多色图标库的集合:

iconfont+除了全新的使用方式,传统的使用方式也进行了一些优化,详细可以参考demo文件: 首先第一个demo文件打开是font-class引用 font-class是unicode使用方式的一种变种,主要是解决unicode书写不直观,语意不明确的问题。 与unicode使用方式相比,具有如下特点: 兼容性良好,支持ie8+,及所有现代浏览器。 相比于unicode语意明确,书写更直观。可以很容易分辨这个icon是什么。 因为使用class来定义图标,所以当要替换图标时,只需要修改class里面的unicode引用。 不过因为本质上还是使用的字体,所以多色图标还是不支持的。 使用步骤如下: (注意:为了浏览器更好的渲染,如果只使用单色图标,建议不要选择下载多色图标替代)
第一步:引入项目下面生成的fontclass代码:
(这种方式是需要引入iconfont.css文件,同时还需要注意字体文件的摆放路径) 第二步:挑选相应图标并获取类名,应用于页面:实际情况中"iconfont"(font-family)需要修改为你项目下的font-family。可以通过编辑项目查看,默认是"iconfont"。 iconfont.css源码其实也是通过@font-face规则声明字体,并引用字体文件,而字体编码则是通过伪元素的方法添加进html标签里面的,所以对于浏览器支持情况需要ie8+(下图为添加字体编码css样式)  这种使用方式需要注意的地方也都提过了,有兴趣的可以去亲自体验一下。 最原始的的unicode使用方式的使用方法可参考上一个教程,教程链接:http://bbs.520it.com/forum.php?mod=viewthread&tid=1950 现在来看一下全新的使用方式,symbol引用,其实这种方式使用起来也非常简单。打开demo_symbol.html文件可以看到详细的使用方法: iconfont图标分别对应不同的类名:
symbol引用: 使用步骤如下: 第一步:引入项目下面生成的symbol代码:
(首先需要引入iconfont.js文件,此js文件相当于是svg图形集合文件的调用) 第二步:加入通用css代码(引入一次就行)
第三步:挑选相应图标并获取类名,应用于页面:实际情况中"iconfont"(font-family)需要修改为你项目下的font-family。可以通过编辑项目查看,默认是"iconfont"。 使用多色图标引用效果:
什么?Iconfont终于可以支持彩色图标了的更多相关文章
- 好消息!iconfont+开始支持彩色图标
想必关注iconfont的同学都知道,iconfont最近做出了一次重大升级,升级成为iconfont+了,而这次更新,iconfont+居然开始支持彩色图标,这意味着我们能够使用更具有特色更形象的全 ...
- 页面添加iconfont字体-[超详细]-支持彩色
第一步: 去矢量图官网注册一下,获取小图标(字体) 的来源 (也可以是其他类似的网站)这里以 阿里妈妈矢量图 官网为例,因为图标丰富,方便使用. 注册请点:https://www.iconfont.c ...
- OpenNI1.5获取华硕XtionProLive深度图和彩色图并用OpenCV显示
华硕XtionPro类似Kinect,都是体感摄像机,可捕捉深度图和彩色图. 具体參数见:http://www.asus.com.cn/Multimedia/Xtion_PRO_LIVE/specif ...
- Android-将RGB彩色图转换为灰度图
package com.example.yanlei.wifi; import android.graphics.Bitmap; import android.graphics.BitmapFacto ...
- 腾讯云万象优图每个账户提供50G的图片存储(支持黄图检测)
文章由GIT博客迁移过来 程序下载地址(源码也在):点我下载 设计说明 10月20号晚上,准备写这么一个程序. 腾讯云万象优图每个账户提供50G的图片存储(支持黄图检测) 可以在截图之后,直接点击上传 ...
- 网页图片提取助手(支持背景图、选择dom范围)
网页图片提取助手(支持背景图.选择dom范围) 网页图片下载工具.网页图片批量保存. 使用场景: 作为web前端开发首——学习小生的你我,仿学在线页面是常有的事,但是一些在线资源,比如图片,图片有im ...
- Visual Studio Image Library现在带矢量图标了
Visual Studio Image Library是微软提供的一套不可多得的高质量图标库(Visual Studio中自己使用的),我在自己写的一些小程序中一直有用到它们.今天天想把之前的程序中的 ...
- OpenNI2获取华硕XtionProLive深度图和彩色图并用OpenCV显示
使用OpenNI2打开XtionProLive时有个问题,彩色图分辨率不管怎样设置始终是320*240,深度图倒是能够设成640*480,而OpenNI1.x是能够获取640*480的彩色图的. 彩色 ...
- QT 实现彩色图亮度均衡,RGB和HSI空间互相转换
从昨天折腾到今天.再折腾下去我都要上主楼了 大致和灰度图均衡是一样的,主要是不能像平滑什么的直接对R,G,B三个分量进行.这样出来的图像时没法看的.因此我们要对亮度进行均衡.而HSI彩色空间中的分量 ...
随机推荐
- 讲解SQL数据库语句
前言 大家好,我是 Vic,今天给大家带来讲解SQL数据库语句的概述,希望你们喜欢 数据库语句 create database teach; use teach; create table `teac ...
- 《挑战30天C++入门极限》C++运算符重载转换运算符
C++运算符重载转换运算符 为什么需要转换运算符? 大家知道对于内置类型的数据我们可以通过强制转换符的使用来转换数据,例如(int)2.1f;自定义类也是类型,那么自定义类的对象在很多情况下也 ...
- CF1204E Natasha, Sasha and the Prefix Sums(组合数学)
做法一 \(O(nm)\) 考虑\(f(i,j)\)为i个+1,j个-1的贡献 \(f(i-1,j)\)考虑往序列首添加一个\(1\),则贡献\(1\times\)为序列的个数:\(C(j+i-1,i ...
- layui select多选下拉显示 以及回显
<input type="hidden" id="hiddensheshi" name="hiddensheshi" value=&q ...
- spark_API
1.概述 总的来讲,每一个spark驱动程序应用都由一个驱动程序组成,该驱动程序包含一个由用户编写的main方法,该方法会在集群上执行一些并行计算操作.Spark最重要的一个概念是弹性分布式数据集,简 ...
- ubuntu之路——day11.2 快速搭建系统并进行迭代、在不同的划分上进行训练和测试
快速搭建系统并进行迭代 1.建立dev/test set,并确定你的目标 2.快速建立初始化的系统 3.使用前面提到的bias/variance分析和错误分析来进行模型优化和迭代 针对以上的过程,An ...
- qt access 数据库
#include <QCoreApplication> #include <QSqlDatabase> #include <QSqlQuery> #include ...
- orchestrator的安装和配置
介绍 在MySQL高可用架构中,目前使用比较多的是Percona的PXC,Galera以及MySQL 5.7之后的MGR等,其他的还有的MHA,今天介绍另一个比较好用的MySQL高可用复制管理工具:O ...
- 面邻域Polygon Neighbors
面邻域Polygon Neighbors 商务合作,科技咨询,版权转让:向日葵,135-4855__4328,xiexiaokui#qq.com 功能: Polygon Neighbors Creat ...
- 002 elasticsearch中的一些概念
在本文中,主要是ES7中的核心概念. ElasticSearch是一个实时分布式开源全文搜索和分析引擎.它可以从RESTful网络服务接口访问,并使用无模式JSON (JavaScript对象符号)文 ...