bootlint
bootlint copied to clipboard
[v1] Progress of Bootlint for Bootstrap v4+
Progress when it comes to porting/removing existing checks (wiki changes not included). Help appreciated.
- [x] W001:
<meta charset="UTF-8">
➡ #454 - [x] W002: X-UA-Compatible ➡ #426
- [ ] W003:
<meta name="viewport">
- [x] W004: deprecated remote modal ➡ #428
- [ ] W005: jQuery (remove for now?)
- [ ] W006: disabled tooltip or popover
- [x] W007:
<button>
missingtype
attribute ➡ #450 - [ ] W008: tooltip/popover in
.btn-group
requirescontainer: 'body'
- [x] W009: empty spacer column ➡ #420
- [x] W010:
.pull-left
or.pull-right
in.media
➡ #426 - [ ] W012: navbar missing inner container
- [ ] W013: Outdated version of Bootstrap (remove for now?)
- [x] W014: Incorrect carousel targets ➡ #452
- [x] W015: Unreleased major version of Bootstrap ➡ #426
- [x] W016: Perhaps you meant to use the
[disabled]
attribute instead of the.disabled
class on a.btn
➡ #450 - [x] W017:
<input>
missingtype
attribute ➡ #450 - [x] E001: HTML5
DOCTYPE
required - [x] E002: Bootstrap v2 grid ➡ #426
- [x] E003: misplaced
.row
➡ #422 - [x] E004: nested containers ➡ #422
- [x] E005:
.row.col-*-*
➡ #420 - [x] E006: non-
<input>
.form-control
within.input-group
➡ #423 - [ ] E007:
bootstrap.js
&bootstrap.min.js
(remove for now?) - [x] E009: forgot about
input-group-sm
/input-group-lg
➡ #423 - [x] E010: input group with multiple
.form-control
s ➡ #423 - [x] E011:
.form-group.input-group
➡ #423 - [x] E012:
.input-group.col-*-*
➡ #420, #423 - [x] E013: row children must be columns ➡ #420
- [x] E014: column parent must be a row ➡ #420
- [x] E015: multiple add-ons on a single side of an input group ➡ #423
- [x] E016: dropdown within button group ➡ #450
- [ ] E017: Incorrect markup used with the .checkbox class.
- [ ] E018:
.radio
- [ ] E019:
.checkbox-inline
- [ ] E020:
.radio-inline
- [x] E021:
.active
&[checked]
➡ #450 - [x] E022: modal within another component ➡ #428
- [x] E023: wrong
.panel-body
parent ➡ #425 - [x] E024: wrong
.panel-heading
parent ➡ #425 - [x] E025: wrong
.panel-footer
parent ➡ #425 - [x] E026: wrong
.panel-title
parent ➡ #425 - [x] E027:
table.table-responsive
➡ #455 - [ ] E028:
.form-control-feedback
missing.has-feedback
- [x] E029: redundant grid column classes ➡ #420
- [x] E030:
.glyphicon-*
without.glyphicon
➡ #426 - [x] E031:
.glyphicon
on element with content or children ➡ #426 - [x] E032: incorrectly structured modal markup ➡ #428
- [ ] E033:
.alert
with dismiss button missing.alert-dismissible
- [ ] E034:
.close
button is present but isn't first element in.alert
- [ ] E035:
.form-horizontal
or.form-inline
on.form-group
- [x] E037:
.col-*-0
classes ➡ #420 - [x] E038:
.media-left
/.media-right
outside of.media
➡ #426 - [ ] E039:
.navbar-left
/.navbar-right
outside of.navbar
- [x] E040:
.modal.hide
➡ #428 - [x] E041: incorrectly structured carousel markup ➡ #452
- [ ] E042:
.form-control
on wrong element or<input>
of wrongtype
- [ ] E043: btn classes on
<a>
s within.navbar-nav
s - [x] E044:
.input-group
must have a.form-control
and either an add-on or a btn ➡ #423 - [x] E045:
.img-responsive
on non-<img>
➡ #453 - [x] E046:
.modal
missing[tabindex]
➡ #428 - [x] E047: Used
.btn
on something other than an<a>
/<button>
/<input>
/<label>
➡ #450 - [x] E048:
.modal
missing[role="dialog"]
➡ #428 - [x] E049:
.modal-dialog
missing[role="document"]
➡ #428 - [ ] E050:
.form-group
s cannot be nested - [x] E051:
.pull-right
and.pull-left
classes, and manual style attributes withfloat: left
orfloat: right
are not allowed on.col-*-*
elements ➡ #420 - [x] E052:
.pull-right
and.pull-left
classes, and manualstyle
attributes withfloat: left
orfloat: right
are not allowed on.row
elements ➡ #420
See also https://github.com/twbs/bootlint/milestone/16