前端加载自定义字体及速度优化
来源:互联网 发布:淘宝退款率高了怎么办 编辑:程序博客网 时间:2024/06/07 16:29
如何加载自定义字体?
CSS3中,使用@font-face即可加载自定义字体了。
推荐的跨浏览器 @font-face CSS 写法:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
到目前为止都非常简单,但是我引入之后,发现字体的加载非常缓慢,原来,中文字体由于文字数量庞大,所以字体文件也非常之大,我的字体文件就有4M,页面加载之后,还需要很长的时间来下载字体,下载完成之后,才会正确显示,在用户看来,就是打开页面很久之后字体又变了,体验非常不好。
字体文件太大,加载慢,怎么办呢?
这时候就要github一下了,最终发现了一个神器: font-spider
简单来说,font-spider的工作原理是这样的: 中文字体文件之所以很大,是因为英语只有26个字母,而中文的汉字有好多好多个,所以文件相对来说就会大很多。font-spider就是从你的css文件的@font-face入手,去查找字体,然后遍历你的html文件,从css和html文件中就可以找到那些你实际上使用的文字,取出这些文字之后,再将他们单独变成字体文件,这样,就去掉了绝大部分其实用不到的文字,体积也会缩小很多很多。
看完之后发现这东西真是太棒了,赶紧来试试,由于我使用了gulp,就直接用相应的构建工具gulp-font-spider
如何使用 gulp-font-spider
第一步当然是安装了:npm install gulp-font-spider --save-dev
接下来在gulpfile.js中,编写任务:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
这两个任务很简单啦:
- font任务是把开发文件夹app里边的字体文件复制到编译之后的文件夹dist中。
- fontspider任务是把dist文件夹中的字体文件,变为压缩后的文件。
显然的,由于这俩任务的关系以及font-spider的工作原理,我们在编写default任务的时候,记得一定要保证html,sass/css,font相关的任务执行完之后,再来执行fontspider任务,不然肯定会出错的啦~
最后,简单看看执行成功的样子:
然后愉快的确认一下效果:
31/3951≈0.7846% 字体文件缩小到了原来的0.7846%,小了不是一点点,棒棒哒!!!
截自:http://blog.csdn.net/Creabine/article/details/55099602
- 前端加载自定义字体及速度优化
- 前端加载自定义字体及速度优化
- 优化网页加载速度(前端优化)
- 前端设计中关于外部js文件加载的速度优化及minify使用教程
- web前端优化(加快加载速度,由点滴做起)
- 优化网页加载速度技巧及网站优化工具
- MyEclipse优化加载速度
- 优化页面加载速度
- 页面加载速度优化
- 网页加载速度优化
- 优化加载速度
- 优化网页加载速度
- 优化页面加载速度
- WebView加载速度优化
- 优化页面加载速度
- 页面加载速度优化
- WebView加载速度优化
- 优化界面加载速度
- java 1.8新特性
- JAVA开发之 2-JRE与JDK及JVM的区别
- js,jsp页面传值的两种方式
- 常用Git命令清单
- Xcode8---ios9.2一下崩溃问题
- 前端加载自定义字体及速度优化
- 将时间字符串转换为另一种字符串
- MVP与MVP+Dagger2的使用及比较
- 开启SE16N调试功能,用户表内容的删除与更新
- hihoCoder1307 : 穿越禁区
- ORACLE 临时表空间使用率过高的原因及解决方案
- iOS 扫描二维码
- 实践---java实现生成验证码功能
- xcode命令行编译