zoukankan      html  css  js  c++  java
  • Gulp命令自动生成精灵图

    文件目录说明

    gulpfile.js代码

    var gulp = require('gulp');
    var spritesmith = require('gulp.spritesmith');
    var imagemin = require('gulp-imagemin');
    var runSequence = require('run-sequence');
    var open = require('gulp-open');
    var configs = {
        //修改图片位置
        spritesSource: 'img/*.png',
        spritesMithConfig: {
            imgName: 'icons.png',
            cssName: 'icons.css',
            algorithm: 'binary-tree',
            padding: 6,
            cssVarMap: function(sprite) {
                sprite.name = sprite.name
            }
        },
        spritesOutputPath: 'output/'
    }
    //总命令
    gulp.task('sprite', function(callback) {
      runSequence(
        'sprite:build', 
        'sprite:images',
        callback
      )
    });
    gulp.task('sprite:build', function () {
      var spriteData = gulp.src(configs.spritesSource).pipe(spritesmith(configs.spritesMithConfig));
      return spriteData.pipe(gulp.dest(configs.spritesOutputPath));
    });
    
    //压缩
    gulp.task('sprite:images', function() {
      return gulp.src(configs.spritesOutputPath + '/**/*.+(png|jpg|jpeg|gif|svg)')
      // Caching images that ran through imagemin
      .pipe(imagemin({
          interlaced: true,
        }))
      .pipe(gulp.dest(configs.spritesOutputPath))
    });

    生成的精灵图和css

    生成精灵图的同时,还会生成和原图片同名的css类名,使用起来更加方便。

    .icon {
      display: inline-block;
    }
    
    // HTML 使用代码
    <i class="icon icon-home"></i>
    */
    .icon-card {
      background-image: url(icons.png);
      background-position: -48px -166px;
      width: 30px;
      height: 30px;
    }
    .icon-help {
      background-image: url(icons.png);
      background-position: 0px -166px;
      width: 42px;
      height: 42px;
    }
    .icon-location {
      background-image: url(icons.png);
      background-position: -192px -166px;
      width: 18px;
      height: 18px;
    }
    .icon-money {
      background-image: url(icons.png);
      background-position: -84px -166px;
      width: 30px;
      height: 30px;
    }
    .icon-note {
      background-image: url(icons.png);
      background-position: -120px -166px;
      width: 30px;
      height: 30px;
    }
    .icon-popbg {
      background-image: url(icons.png);
      background-position: 0px 0px;
      width: 630px;
      height: 160px;
    }
    .icon-user {
      background-image: url(icons.png);
      background-position: -156px -166px;
      width: 30px;
      height: 30px;
    }
  • 相关阅读:
    java 项目的CAS搭建
    OpenStack Grizzly版本(Ubuntu 12.04)配置
    存储介质管理
    软件包管理
    终端和键盘
    Shell环境(environment)和配置(configuration)
    Linux 基本命令入门
    iptables的原理及使用
    移动小球 (sicily 1934) (双向链表)
    1010 Tempter of the Bone (杭电) (图Graph)
  • 原文地址:https://www.cnblogs.com/yinluhui0229/p/8581158.html
Copyright © 2011-2022 走看看