The Current State of HTML5 Forms

The email Type

<input type=email>

Live Demo



Firefox
4+
Safari
5.2-
Safari Mobile
iOS 3.1+
Chrome
6-9
Chrome
10+
Opera
10.6+
IE
10+
Android
2.3+
Supported No support Kinda supported Kinda supported Supported Supported Supported No support

Supported Browser Screenshots

Opera 9
Opera 11
Safari 5 (Mac, pre validation nerf)
Firefox 4b12
Chrome 10
Mobile Safari (iOS 3.1) Keyboard

The Low Down

The email input type is for (you guessed it) email addresses. Just by virtue of having this type applied (and it has a name attribute), the value will be validated.

  • Email validation is a particularly difficult (screenshot) to do perfectly (via JS or Server Side validation).
  • Safari 5 validates on Windows but not Mac. An older version of Mac Safari (5.0.0) had basic form validation but it was pulled and still not back as of 5.2.
  • Falls back to a regular text input.
  • Mobile Safari does no validation, but brings up a keyboard which features an @ key.
  • Can be combined with the multiple attribute for accepting more than one but still validating. (Opera 11)
  • Use case: simple contact forms
  • Careful with double-byte internationalized domain names, they don't pass validation. (need to test exact versions)
  • Chrome 6-9 accepted type but did not validate until Chrome 10.