HTML5Forms is a polyfill for the HTML5 Forms specification. It also corrects problems with existing native implementations.

html5Forms, html5Widgets, $wf2, fdSliderController, Calendar, jscolor
bower install html5-forms


HTML5Forms.js is a JavaScript polyfill that implements a subset of the HTML5 Forms module in all browsers. The script will only add support for the different parts of the module when there doesn't exist a native implementation. HTML5Forms supports the following HTML5 input types:

  • range
  • date
  • datetime
  • datetime-local
  • week
  • color

It also supports:

  • form validation (via "required" and "pattern" attributes)
  • the autofocus attribute (i.e. focusing on a particular form element onload)
  • the placeholder attribute (i.e. descriptive text of what should be in a form field)
  • the output tag (solves equations of form elements)
  • CSS styling of form validation states (simulates :invalid and :valid in unsupported browsers like IE9 and lower)
  • CSS styling of form elements that are not included in the CSS3 UI specification, but I think are useful for developers:

    • .wf2_isBlank, .wf2_notBlank – these classes are applied to form field when a form element is blank/not blank repectively.
    • .wf2_lostFocus -this class is applied to a form element when a form field loses focus.
    • .wf2_submitAttempted – this class is applied to a tag when a form submission is attempted.

More information about how this works is available at:

Note that this package was originally released in 2010 as html5Widgets, and was renamed to a more accurate and descriptive name. Also note that the version of webforms2 that is included in this package does not include support for the depricated repetition module -- it will be put back in as a separate module at a later date.