Skip to content
Snippets Groups Projects

css-sprite NPM version Build Status Dependencies

A css sprite generator.

Generates a sprite file and the propper css file out of a directory with images

Requirements

css-sprite requires node-canvas which depends on Cairo.

Please refer to the installation guide.

Install

Install with npm

npm install css-sprite --save

If you want to use css-sprite on your cli use:

npm install css-sprite -g

Command Line Interface

Usage: css-sprite <src>... [options]

src     glob strings to find source images to put into the sprite

Options:
   -o DIR, --out DIR      path of directory to write sprite file to  [process.cwd()]
   -n, --name             name of the sprite file  [sprite.png]
   -st, --style           file to write css to, if ommited no css is written
   -c, --css-image-path   http path to images on the web server (relative to css path or absolute)  [../images]
   -p, --processor        output format of the css. one of css, less, sass, scss or stylus  [css]
   --orientation          orientation of the sprite image  [vertical]
   --margin               margin in px between tiles  [5]

Programatic usage

var sprite = require('css-sprite');
sprite.create(options, cb);

Options

  • src: Array or string of globs to find source images to put into the sprite. [required]
  • out: path of directory to write sprite file to [process.cwd()]
  • name: name of the sprite file [sprite.png]
  • style: file to write css to, if ommited no css is written
  • cssPath: http path to images on the web server (relative to css path or absolute) [../images]
  • processor: output format of the css. one of css, less, sass, scss or stylus [css]
  • orientation: orientation of the sprite image [vertical]
  • margin: margin in px between tiles [5]

Example

var sprite = require('css-sprite');
sprite.create({
  src: ['./src/img/*.png'],
  out: './dist/img'
  name: 'sprites.png',
  style: './dist/scss/_sprites.scss',
  cssPath: '../img',
  processor: 'scss'
}, function () {
  console.log('done');
});

Usage with Gulp

var gulp = require('gulp');
var gulpif = require('gulp-if');
var sprite = require('css-sprite').stream;

gulp.task('sprites', function () {
  return gulp.src('./src/img/*.png')
    .pipe(sprite({
      name: 'sprites.png',
      style: '_sprites.scss',
      cssPath: './img',
      processor: 'scss'
    }))
    .pipe(gulpif('*.png', gulp.dest('./dist/img/')))
    .pipe(gulpif('*.scss', gulp.dest('./dist/scss/')));
});

Options to use css-sprite with gulp are the same as for the sprite.create function with the exception of src and out.