aboutsummaryrefslogtreecommitdiff
path: root/Gruntfile.js
diff options
context:
space:
mode:
Diffstat (limited to 'Gruntfile.js')
-rw-r--r--Gruntfile.js26
1 files changed, 10 insertions, 16 deletions
diff --git a/Gruntfile.js b/Gruntfile.js
index 341c36ebd..ff878a6ea 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -272,24 +272,18 @@ module.exports = function (grunt) {
}
},
- validation: {
+ htmllint: {
options: {
- charset: 'utf-8',
- doctype: 'HTML5',
- failHard: true,
- reset: true,
- relaxerror: [
- 'Element img is missing required attribute src.',
- 'Attribute autocomplete not allowed on element input at this point.',
- 'Attribute autocomplete not allowed on element button at this point.',
- 'Element div not allowed as child of element progress in this context.',
- 'Element thead not allowed as child of element table in this context.',
- 'Bad value tablist for attribute role on element nav.'
+ ignore: [
+ 'Element “img” is missing required attribute “src”.',
+ 'Bad value “X-UA-Compatible” for attribute “http-equiv” on element “meta”.',
+ 'Attribute “autocomplete” not allowed on element “input” at this point.',
+ 'Attribute “autocomplete” not allowed on element “button” at this point.',
+ 'Element “div” not allowed as child of element “progress” in this context. (Suppressing further errors from this subtree.)',
+ 'Consider using the “h1” element as a top-level heading only (all “h1” elements are treated as top-level headings by many screen readers and other tools).'
]
},
- files: {
- src: '_gh_pages/**/*.html'
- }
+ src: '_gh_pages/**/*.html'
},
watch: {
@@ -358,7 +352,7 @@ module.exports = function (grunt) {
require('time-grunt')(grunt);
// Docs HTML validation task
- grunt.registerTask('validate-html', ['jekyll:docs', 'validation']);
+ grunt.registerTask('validate-html', ['jekyll:docs', 'htmllint']);
var runSubset = function (subset) {
return !process.env.TWBS_TEST || process.env.TWBS_TEST === subset;