HTML: <input type="email">
XHTML: <input type="email"/>  or  <input type="email" />

HTML5 only. Creates a text input for entering one or more email addresses. The user agent may look for patterns to confirm the entry is in email address format.

Start/End Tags

This is an empty element. In HTML, the end tag is forbidden. In XHTML, the element must be closed with a trailing slash as just shown. Developers may include a space character before the slash for backward compatibility with older browsers.


  • HTML5


Values: on | off
HTML5 only. Allows the user agent (browser) to fill in a field automatically (on) or requires the user to enter the information every time (off). Omitting this attribute causes the control to inherit the autocomplete setting for the associated form element.


Values: None in HTML. (autofocus="autofocus" in XHTML)
HTML5 only. Indicates the control should have focus (be highlighted and ready for user input) when the document loads.


Values: None in HTML. (disabled="disabled" in XHTML)
Disables the control for user input. It can be altered only via a script. Browsers may display disabled controls differently (grayed out, for example), which could be useful for dimming certain controls until required info is supplied.


Values: id of the form owner
HTML5 only. Explicitly associates the input control with its associated form (its form owner). With this method, the input control does not need to be a child of the applicable form element.


Values: id of datalist
HTML5 only. Indicates that the control has a list of predefined suggestions for the user, which are provided by a datalist element. The value of the list attribute is the id of the associated datalist.


Values: number
Specifies the maximum number of characters the user can enter for input elements set to text, password, search, tel, or url.


Values: None in HTML. (multiple="multiple" in XHTML)
HTML5 only. Indicates the user is allowed to specify more than one value.


Values: text
Required by all input types except submit and reset. Assigns a name to the control; a script program uses this name to reference the control.


Values: JavaScript regular expression
HTML5 only. Specifies a regular expression against which the control’s value is to be checked. This is useful for making sure user input matches the format of the expected value, for example, a telephone number or an email address. The title attribute can be used with pattern to provide a description of the expected pattern/format of the input.


Values: number
HTML5 only. Provides a short (one word or short phrase) hint or example to help the user enter the correct data or format. If a longer description is necessary, use the title attribute.


Values: None in HTML. (readonly="readonly" in XHTML)
Indicates that the form input may not be modified by the user.


Values: None in HTML. (required="required" in XHTML)
HTML5 only. When present, indicates the input value is required.


Values: number
Specifies the width of a text-entry control (when type is set to text, password, or search), measured in number of characters. Users may type entries that are longer than the space provided, causing the field to scroll to the right.


Values: text
Specifies the initial value for this control.
<input type="email" name="post" value="jan@example.com">

Rendered Example