Awesome
grunt-csso
Minify CSS files with CSSO.
CSSO task
Run this task with the grunt csso
command.
Task targets, files and options may be specified according to the grunt Configuring tasks guide.
Files are compressed with csso.
Options
restructure
Type: Boolean
Default: true
You can turns structural optimizations off.
banner
Type: String
Default: null
Prefix the compressed source with the given banner, with a linebreak inbetween.
report
Choices: false
, true
, 'min'
, 'gzip'
Default: false
Either report only minification result or report minification and gzip results. This is useful to see exactly how well clean-css is performing but using 'gzip'
will make the task take 5-10x longer to complete. Example output.
beforeCompress
Type: (ast, options, csso) => {}
, [(ast, options, csso) => {}]
Default: null
Allows registering one or many beforeCompress
functions. This is useful to add manipulate the AST before compression is made by csso.
afterCompress
Type: (ast, options, csso) => {}
, [(ast, options, csso) => {}]
Default: null
Allows registering one or many afterCompress
functions. This is useful to add manipulate the AST after compression is made by csso.
Usage Examples
csso: {
compress: {
options: {
report: 'gzip'
},
files: {
'output.css': ['input.css']
}
},
restructure: {
options: {
restructure: false,
report: 'min'
},
files: {
'restructure.css': ['input.css']
}
},
banner: {
options: {
banner: '/* Copyleft */'
},
files: {
'banner.css': ['input.css']
}
},
shortcut: {
src: 'override.css'
}
}
Minify all contents of a release directory and add a .min.css
extension
csso: {
dynamic_mappings: {
expand: true,
cwd: '/css/',
src: ['*.css', '!*.min.css'],
dest: 'dest/css/',
ext: '.min.css'
}
}