Grunt学习——创建子图集

注:此篇文章是《JavaScript Web应用开发》的学习笔记!


图像往往是Web应用中最耗资源的,我们应该尽量通过一些技术手段减少对服务器的请求数量,而不是一味地使用更好更贵的硬件来提升。

子图集是由多张图像而成的一个大图像文件。有了它我们便可以使用background-position,width,height这三个CSS属性从子图集中选择需要的图像。它也是对静态资源的打包,不过打包的是图像。

在web领域,图标和各种小图像最适合使用子图集。自己维护子图集表单和对应的CSS是件很麻烦的事,不过npm有一些现成的包能自动生成CSS子图集映射。比如grunt-spritesmith。

  grunt.initConfig({
               sprite: {
                 icons: {
                   src: 'src/img/icons/*.png',
                   dest: 'build/img/icons.png',
                   destCss: 'build/css/icons.css'
                 }
               }
             });          

属性名称跟书本的不大一样,可能是版本问题。所以一开始按着书本写的时候一直报错,这也提醒我们,书本的东西即便再新,总还会有些时延的。
执行Grunt命令

这是插件生成的CSS文件,有了它便可以“裁剪”子图集表单的不同部分,获取想要的图标。例:

.icon-email-error {
  background-image: url(../img/icons.png);
  background-position: 0px 0px;
  width: 16px;
  height: 16px;
}
.icon-eye {
  background-image: url(../img/icons.png);
  background-position: 0px -16px;
  width: 16px;
  height: 12px;
}
.icon-ponyfoo {
  background-image: url(../img/icons.png);
  background-position: -16px 0px;
  width: 16px;
  height: 16px;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值