字体图标Icon Font
字体图标Icon Font
前段时间研究怎样做字体图标,在网上查找诸多资料,诸多尝试,找到一套可以自己制作自己独立控制的制作流程,公司按照这套流程形成一套自己公司图标,本人目前所在公司已经在使用没有发现任何bug。下面是自己就个人研究和网上资料总结的字体图标相关知识和流程。看到这篇文章的同学,使用过程有什么问题可以互相学习,嘻嘻。。。。
一、字符图标的优点
l 字体文件小,减少http请求;
l 容易编辑和维护,大小颜色等可以通过css来控制;
l 兼容性好,支持大多数浏览器;
缺点:只能被渲染成单色。
不能通过字符图标实现,颜色较多
可以使用字符图标实现,颜色单一
虽然是多个颜色,但是可以通过css进行控制
二、字符图标的制作
工具:(ps),AI,FontLab Stadio,在线字体转化;
步骤:1.将图标保存成Photoshop eps格式(ico.eps);
2.在AI中打开ico.eps,选中某个图标,复制;
3.在FontLab中新建一组字体,双击字符进入编辑页(可以选择0-9,a-z, A-Z),粘贴,调整图标到合适的位置大小(一定要注意基准线);
4.所有图标都调整完毕后,保存gentrate font(.ttf根据需求选用格式);
5.如需要其他字体格式,可通过在线转化工具,进行字体格式转换。 (http://www.fontsquirrel.com/tools/webfont-generator)
三、注意事项
UI(图标制作阶段):
1.最好使用AI软件进行图标制作,若使用PS制作需提供eps格式文件,所需图标整合到一起,排列整齐,图标颜色一律采用黑色,透明背景,制作时大小统一48*48px,图标间距48px;
2.图标路径一定要闭合,绘制弧线时保持弧度饱满,一条路径贯穿起来(若使用形状叠加,做到拐角处链接流畅)(不可用), (可用);
3.删除不必要的路径,节点,保持画布清洁;
UI是最重要的环节,后期字体的路径直接取决于图标的精细程度。
形成图标字体阶段:
1.用AI打开eps,复制粘贴到FontLab后,若路径变形,回到AI放大后重复操作,直到路径和AI中的一样(可以锁定宽300px,高度自动);
2.图标必须在A、D基准线内,否则会影响使用。
3.结合参考线控制所有图标的尺寸一致,居中排列(600*600)。
4.解决屏幕阅读器问题,方法一html元素添加aria-hidden='true'属性;
方法二把内容写到css里面,
font-family:yourFont;content:attr(data-icon);speak:none;
统一起来可以都添加上,经测试chrome、firefox、safari、微信、qq、UC都能正常显示。
四、字符图标的使用
现在主流浏览器(包括IE6)都支持CSS3的自定义字体(@font-face),因此可以尝试使用font来替换图片展示网站的各种icon。但是各浏览器对于字体文件格式的支持不尽一致。目前主流浏览器对于icon font的支持如下:
l IE:从IE4开始支持eot格式,IE9开始支持woff。
l webkit/safari:支持TrueType/OpenType(.ttf),OpenType PS(.otf),iOS4.2+支持.ttf,iOS 4.2以下只支持SVG字体; Safari5.1+ 开始支持woff格式
l Chrome:除webkit支持的以外,从Chrome 6开始,开始支持woff格式;
l Firefox:支持.ttf和.otf,从Firefox 3.6开始支持woff格式;
l Opera:支持.ttf、.otf、.svg。 Opera 11开始支持woff;
l iPad, iPhone and Android 3.0+ 支持SVG fonts。
使用font-face声明字体:
@font-face {
font-family: 'gome_icon';
src: url('../fonts/gome_icon.eot');
src: url('../fonts/gome_icon.eot?#iefix') format('embedded-opentype'),
url('../fonts/gome_ico2.woff') format('woff'),
url('../fonts/gome_icon.ttf') format('truetype'),
url('../fonts/gome_icon.svg#icon') format('svg');
font-weight: normal;
font-style: normal;
}
方法一:把字符直接写到html文件里。
<div class="iconFont">1</div>
.iconFont{font-family:"gome_icon".....}
方法二:使用data-icon属性。
<div class="" data-icon="1"></div>
[data-icon]:before {
display: block;
font-family: 'gome_icon';
content: attr(data-icon);
speak: none;
-webkit-font-smoothing: antialiased;//去除锯齿,实际测试无影响}
实际用途中经常图标和文字结合使用例如:
 
<a href="" data-icon="2">影院</a>
[data-icon]:before {
font-family: 'gome_icon';
content: attr(data-icon);
speak: none;
}这种情况用data-icon写法更方便。
综上,统一为使用data-icon的写法。
字体图标Icon Font的更多相关文章
- 字体图标 icon font
		
Icon font icon font 指的是用字体文件代替图片文件,来展示图标.特殊字体等元素的方法. 应用场景: iconfont的优缺点 大小能够自由地变化 颜色能够自由地改动 加入阴影效果 * ...
 - 如何在移动端app中应用字体图标icon fonts  (转)
		
原文: http://www.cnblogs.com/willian/p/4166757.html?utm_source=tuicool&utm_medium=referral How to ...
 - 如何在移动端app中应用字体图标icon fonts
		
How to use icon fonts in your mobile apps 在任何APP设计中实现可图形的矢量缩放最完美的方式是使用字体图标. 移动端的设计变的越来越复杂.原因在于多样的屏幕尺 ...
 - AngularCli项目中添加字体图标(Font)详解
		
本文主要讲如何在AngularCli生成的项目中使用字体图标. 一 SVG图标准备 将需要转换为字体图标的图片转换为SVG格式. 这个让项目视觉设计师搞定即可. 二 SVG图标转Font 可以通过Ic ...
 - 字体图标 轻量级 Font Awesome
		
今天呢,来推荐一款请轻量级 字体图标框架.Font Awesome 用法与bootstrap相似 打开网址.download下载,然后打开取到这两个,下载点这里,这个博客弄的挺好的. 找到exampl ...
 - 字体图标:Font Awesome
		
小图标 Font Awesome Font Awesome 字体为您提供可缩放矢量图标,它可以被定制大小.颜色.阴影以及任何可以用 CSS 的样式,是一款惊艳的字体图标! 可以前往官网进行学习 Fon ...
 - CSS - icon图标(icon font)
		
1. 概念 这个小红点是图标,图标在CSS中实际上是字体. 2. 为什么出现本质是字体的图标? 2.1 图片增加了总文件的大小. 2.2 图片增加了额外的http请求,大大降低网页的性能. 2.3 图 ...
 - 在nuxt中引入Font Awesome字体图标库
		
介绍 在element-ui框架中提供了一些图标样式,但是种类比较少,所以在这里提供一套更完善的字体图标库Font Awesome(官方文档),下面就开始介绍如何在一个nuxt项目中使用这套字体库. ...
 - jQuery插件fontIconPicker配合FontAwesome字体图标库的使用
		
同样先上效果图: 怎么样,是不是很好看,jquery fontIconPicker这个插件做的很不错,支持分类,搜索,还有分页功能,可以自定义分页,具体的使用方法我就不一介绍了,我只说一下如何使用fo ...
 
随机推荐
- PS与CSS字间距转换
			
字间距: 实际像素大小 real_letter_spacing,(单位为px) 文字字号 font,(单位为px) 文字间距 spacing, 它们的换算关系为: real_letter_spacin ...
 - Win10下安装SVN出现2503/2502解决方法
			
出现错误的原因是权限不够 在win10的开始按钮上,右键点击,选择"命令提示符(管理员)(A)",弹出管理员身份运行模式的命令行的窗口,输入如下的命令: msiexec /pack ...
 - Unity遮罩之Mask、RectMask2D与Sprite Mask适用场景分析
			
遮罩,顾名思义是一种可以掩盖其它元素的控件.常用于修改其它元素的外观,或限制元素的形状.比如ScrollView或者圆头像效果都有用到遮罩功能.本系列文章希望通过阅读UGUI源码的方式,来探究遮罩的实 ...
 - WPF Popup 右下角提示框   定时消失 ,以及任意位置定位
			
------------恢复内容开始------------ 好久没写WPF的博客了,其实有很多心得要总结下,但是懒..... 今天工作需要,需要实现一个 1 右下角的提示窗口,然后过三五秒自动消失这 ...
 - uwp 之吐司 toast
			
Toast -------------------------------------------------------------- var t = Windows.UI.Notification ...
 - 【面试题】挑战10个最难回答的Java面试题(附答案)
			
转自:https://mp.weixin.qq.com/s/Kd-2qkDfaokHU7d2nfsE6w 1.为什么等待和通知是在 Object 类而不是 Thread 中声明的? 一个棘手的 Jav ...
 - 2018.7.31-2018.8.2记:关于maven
			
maven的使用,用得好,则省力省事,但是用不好则会造成一堆莫名其妙的错误,maven在使用的时候,jar包下载异常终止尤为需要注意,很容易就终止了,并且会出现一些下载出空jar包的情况,即:jar包 ...
 - T-SQL -  习题02_将数据表year|month|amount查询成year|m1|m2|m3|m4的样式
			
时间:2017-09-11 整理:byzqy 题目:有个年度统计表,结构如下: 怎么样把这个表,查询成这样一个结果: 这是在面试过程中遇到的一个关于数据库的题,没有一点思路,不知它考查到的知识点是什么 ...
 - shell传参和变量赋值
			
1.变量赋值方式 (1)方式1--直接赋值(=) (2)方式2--read交互式赋值 (3)方式3--脚本传参赋值 2.read read -p "请输入你的名字和年龄:" nam ...
 - Linux 学习路线
			
前言 这篇文章会一直更新...只是将个人的文章总结归纳到这,不代表最佳学习路线 没有链接的文章后续会补上...还没写的知识点未来用到也会补上...太卷了 常用基础命令 Linux常用命令 - cd命令 ...