Gulp plugin which splits CSS files suitably for Internet Explorer < 10.
This is the a Gulp wrapper around bless.js (see blesscss.com).
**But** this is a modified version of Version 3.0.3. There will be no updates. This is a static working version which is forked of v3.0.3 and adds the possibility of changing the fileSuffix. If 3.0.3 is enough for you, here you go.
Package | gulp-bless |
Description | CSS post-processor which splits CSS files suitably for Internet Explorer < 10. Bless + Gulp = gulp-bless. |
Node Version | >= 0.9 |
npm install gulp-bless
var gulp = require('gulp');
var bless = require('gulp-bless');
gulp.task('css', function() {
gulp.src('style.css')
.pipe(bless())
.pipe(gulp.dest('./splitCSS'));
});
gulp.task('default', ['watch']);
// Rerun the task when a file changes
gulp.task('watch', function () {
gulp.watch('./css/*.css', ['css']);
});
bless(options). The (optional) options
argument is passed on to bless.js. You can also include a log
option to control whether Gulp should log output which defaults to false
(this isn't passed to bless.js
).
Bless' options are listed here: paulyoung/bless.js/blob/master/bin/blessc#L10.
For example, if you didn't want the first CSS chunk / "blessed" file to @import
the others, then you'd do this:
gulp.src('long.css')
.pipe(bless({
imports: false
}))
.pipe(gulp.dest('./'))
Note: Breaking change as of 3.0.0
; the options
did not fallback to the bless.js' defaults when missing, but do now.
If you're using a CSS pre-processor which creates inline sourcemaps bless.js will take a very long time to run. It's recommended that you don't pass files containing inline sourcemaps to gulp-bless
. If you do want to use sourcemaps then create them as a separate .map
file.
If you can't create separate sourcemap files — such as if you are using ~v0.7 of gulp-sass which uses libsass
— consider creating a minified version of your CSS (using something like gulp-minify-css) which strips out the inline sourcemap and running gulp-bless
on that, then include that file in production whilst still including your development version with its inline sourcemap when developing locally.
- It no longer concatenates all files that come down the pipeline.
- fileName can no longer be passed directly to the plugin itself.