Skip to content

gulp plugin:input css file ->get sprite image and new css file

Notifications You must be signed in to change notification settings

king-king/gulp-css-img-sprite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

update log

Table

  1. Install
  2. Gulp Version
  3. How To Write CSS
  4. How To Write JS
  5. Example

npm install css-img-sprite

shop: shop bag: shop

  • add '?__sprite' or '?__spriter' at the end of url to do sprite:
.image1 {
    margin: 10px;
    width: 100px;
    height: 30px;
    background: url("test/image/shop.png?__spriter") 0 0;
    border: 3px solid black;
}
.image2 {
    margin: 10px;
    width: 50px;
    background: url("test/image/bag.png?__spriter") 0 0;
    height: 50px;
    border: 3px solid black;
}

after sprite: after

  • you can scale the image by set background-size.we can put the same scale images into one output image.

  • you can not use repeat,repeat-x or repeat-y with scale!=1,for example: you scale the image 2 times and you also use repeat-x,as a result, although you add '?__spriter',you will not get sprite image.

.image {
    width: 70px;
    background: url("test/image/bag.png?__spriter") repeat-x 0 200px;
    background-size: 100px auto;
    height: 10px;
}

you can write css like this:

.image {
   width: 70px;
   background: url("test/image/bag.png?__spriter") repeat-x 0 200px;
   background-size: 50px auto;
   height: 10px;
}
/*or*/
.image2 {
   width: 70px;
   background: url("test/image/bag.png?__spriter") repeat-x 0 200px;
   height: 10px;
}
  • you can use auto to set background-size
.image1 {
    background: url("test/image/bag.png?__sprite") 0 0;
    background-size: auto 50px;
}
/* or */
.image1 {
    background: url("test/image/bag.png?__sprite") 0 0;
    background-size: 50px 50px;
}
/* or */
.image1 {
    background: url("test/image/bag.png?__sprite") 0 0;
    background-size: auto auto;
}
  • Arguments Guide
/**
 *  arguments:
 *      spriteObj:{object}
 *          spriteObj.cssSrc:{string} although you give content,we still need file name,so,give us cssSrc
 *          [spriteObj.cssDesDir]:{string} css output dir ,default:cssSrc.we do not write new css file for you,
 *                                             you need do it yourself.we need it because we need to change
 *                                             css background-image:url()
 *          [spriteObj.imgDesDir]:{string} image output dir,default:cssSrc
 *          [spriteObj.layout]:{string} "linear"(default)|"matrix".matrix will use bin-packing
 *          [spriteObj.hash]:{boolean} add hash flag on sprite image
 **/

for example

var sprite = require('gulp-css-img-sprite');
var gulp = require("gulp");

var outDir = "build";

gulp.src("css/**/*.css")
    .pipe(sprite({
        cssDesDir: outDir,
        imgDesDir: "build/image",
        hash: true
    }))
    .pipe(gulp.dest(outDir));

Important:you must make sure cssDesDir is as same as gulp.dest

you can see the usage in test folder

About

gulp plugin:input css file ->get sprite image and new css file

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published