浅谈SVG Sprite

2018-02-06 16:27:40 浏览数 (1)

随着前端技术的发展,有越来越多的方法实现icon的制作,同时为了满足市面上各种大屏幕分辨率,字体图标icon font应运而生,字体图标的制作也是一种全新的设计方式,但是icon font 在windows系统下,字体较小时,锯齿问题比较严重,那么今天要讲的svg sprite,不仅可以随意改变图标大小不会产生锯齿,还能随心所欲的填充颜色。

下面来来介绍一下矢量图形SVG Sprite在页面中的应用。

第一步:制作SVG图标 首先的准备一套SVG图标,我们直接到icomoon.io上下载。

1.选中图标

2.点击Generate

3.下载

然后我们可以在解压文件中,找到对应的svg图标文件夹。

第二步:合并SVG图标 准备好svg图标后,我们需要把多个svg图标整合到一个svg文件中。 这里需要用到自动化合并工具(grunt),grunt有个名为svgstore的插件。 关于grunt环境的安装,就不在这阐述 。

环境安装好后,在项目目录下执行下面的命令,安装插件:

安装好后,可以看到grunt-svgstore文件夹里有个Gruntfiles.js配置文件。 我们加入以下两段代码:

了解更多配置项:https://www.npmjs.com/package/grunt-svgstore

配置好以后,我们需要把第一步下载下来的svg图标,放到sprites文件夹中,如下图:

到这为止,一切准备就绪,只需进入到 grunt-svgstore目录,执行命令:

运行命令后,可以看到成功创建了sprite.svg文件

第三步:应用

我们来看下生成文件的源代码:

再来看看浏览器里页面的效果~~~

到这里svg sprite 图标就已经完成了。

兼容性:

对于ie8以下,我们可以添加一个标签,使用css sprite:

为避免其他浏览器加载,可以加上条件注释。

这样就完美啦~

0 人点赞