HTML

The <input type="email"> defines a field for an e-mail address.

The input value is automatically validated to ensure it is a properly formatted e-mail address.

<input type="email"> 「メールアドレスの入力欄を作成する」

 input要素の type属性で type="email" を指定すると、メールアドレス入力欄が作成されます。

 name属性は入力欄に名前を付ける属性ですが、form要素でデータが送信される際、name属性で指定した名前と、入力された値が一組になって送信されます。

 size属性と maxlength属性はそれぞれ、メールアドレス入力欄の表示サイズと、入力できる最大文字数を指定します。

 type="email" をサポートしている一般的なブラウザでは、入力された値にアットマーク( @ )を含む妥当なメールアドレスでは無い場合にバリデーションが働くようです。ただし、HTML5の仕様では、ユーザーエージェントは妥当なメールアドレス以外も入力可能にすることもできるとされており、実際にどのような動作となるかは、ユーザーの利用するユーザーエージェント次第と言えるでしょう。type="email" を指定しておけば、必ずユーザーに正確なメールアドレスを記入してもらえるというわけではないので、使用の際には注意してください。

 ユーザーは空文字を入力することができます。入力必須にする場合には、required属性を併用してください。

 multiple属性を指定すると、ユーザーが複数のメールアドレスを選択・入力できるようにすることができます。この場合、送信される値は半角カンマ( , )区切りのリストとなります。

 value属性を指定する場合には、その値には妥当なメールアドレス(もし、multiple属性を指定している場合には、半角カンマ( , )区切りの妥当なメールアドレスのリスト)を指定する必要があります。

type="email" の場合に指定可能な属性

name属性
フォーム部品に名前をつける。
value属性
送信される値を指定する。(type="email"の場合には、妥当な絶対URLを指定する必要がある)
size属性
表示文字数を指定。(1以上の正の整数)
maxlength属性
入力できる最大文字数を指定する。
autocomplete属性
入力候補を提示して入力内容を自動補完する。(on・off・default)(初期値はdefault)
multiple属性
複数の値を入力・選択できるようにする。
pattern属性
正規表現で入力値のパターンを指定する。
placeholder属性
入力欄に初期表示する内容を指定する。
readonly属性
ユーザーによるテキスト編集を不可にして読み取り専用にする。(readonly)
required属性
入力必須にする。