Minify HTML
This plugin requires Grunt ~0.4.0
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-contrib-htmlmin --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-contrib-htmlmin');
Run this task with the grunt htmlmin
command.
Minifies HTML using html-minifier. Bugs regarding the output should be reported here.
See the html-minifier docs for more in-depth explanation of the options and caveats.
Type: Boolean
Default: false
Strip HTML comments.
Type: Boolean
Default: false
Remove HTML comments from inside <script>
and <style>
.
Type: Boolean
Default: false
Remove CDATA sections from inside <script>
and <style>
.
Type: Boolean
Default: false
Collapse white space that contributes to text nodes in a document tree.
It doesn't affect significant white space; e.g. in contents of elements like SCRIPT, STYLE, PRE or TEXTAREA.
<div> <p> foo </p> </div>
=> <div><p>foo</p></div>
Type: Boolean
Default: false
Collapse boolean attributes.
<input disabled="disabled">
=> <input disabled>
Type: Boolean
Default: false
Remove attribute quotes when it's safe to do so.
<p id="foo">
=> <p id=foo>
Type: Boolean
Default: false
Remove redundant attributes like type="text/javascript"
.
Type: Boolean
Default: false
Replace doctype with the short HTML5 version <!DOCTYPE html>
.
Type: Boolean
Default: false
Remove empty (or blank) attributes.
Type: Boolean
Default: false
Some elements are allowed to have their tags omitted, like </td>
.
Type: Boolean
Default: false
Remove empty elements.
Experimental
grunt.initConfig({
htmlmin: { // Task
dist: { // Target
options: { // Target options
removeComments: true,
collapseWhitespace: true
},
files: { // Dictionary of files
'dist/index.html': 'src/index.html', // 'destination': 'source'
'dist/contact.html': 'src/contact.html'
}
},
dev: { // Another target
files: {
'dist/index.html': 'src/index.html',
'dist/contact.html': 'src/contact.html'
}
}
}
});
grunt.registerTask('default', ['htmlmin']);
- 2013-04-06 v0.1.3 Fail target when minify encounters an error.
- 2013-04-05 v0.1.2 Update html-minifier which fixes IE conditional comments and prefixed HTML elements
<ng-include>
<ng:include>
. - 2013-02-18 v0.1.1 First official release for Grunt 0.4.0.
- 2013-01-30 v0.1.1rc7 Updating grunt/gruntplugin dependencies to rc7. Changing in-development grunt/gruntplugin dependency versions from tilde version ranges to specific versions.
- 2013-01-09 v0.1.1rc5 Updating to work with grunt v0.4.0rc5. Switching to this.filesSrc api.
- 2012-11-01 v0.1.0 Initial release.
Task submitted by Sindre Sorhus
This file was generated on Sat Apr 06 2013 14:28:13.