
HTML5 新しい Input タイプ
HTML5 では、複数の新しいフォーム入力タイプが導入されています。これらの新機能により、入力の制御と検証が向上します。
この章では、これらの新しい入力タイプについて詳しく説明します:
- color
- date
- datetime
- datetime-local
- month
- number
- range
- search
- tel
- time
- url
- week
注意: すべての主要なブラウザが新しい input タイプをサポートしているわけではありませんが、すでにすべての主要なブラウザで使用できます。サポートされていない場合でも、通常のテキストフィールドとして表示されます。
Input タイプ: color
color タイプは、カラー選択のための input フィールドです。次のように使用します:
実例
カラーピッカーから色を選択します:
選択した色: <input type="color" name="favcolor">Input タイプ: date
date タイプは、日付選択のための input フィールドです。次のように使用します:
実例
日付選択のためのコントロールを定義します:
誕生日: <input type="date" name="bday">Input タイプ: datetime
datetime タイプは、UTC 時間の日付と時間を選択するための input フィールドです。次のように使用します:
実例
日付と時間(ローカル時間)のコントロールを定義します:
誕生日 (日付と時間): <input type="datetime" name="bdaytime">Input タイプ: datetime-local
datetime-local タイプは、時刻情報を含まない日付と時間を選択するための input フィールドです。次のように使用します:
実例
時刻情報を含まない日付と時間を定義します:
誕生日 (日付と時間): <input type="datetime-local" name="bdaytime">Input タイプ: email
email タイプは、メールアドレスを入力するためのフィールドです。次のように使用します:
実例
フォーム送信時に email フィールドの値の妥当性が自動的に検証されます:
E-mail: <input type="email" name="email">ヒント: iPhone の Safari ブラウザでは、email 入力タイプをサポートしており、タッチスクリーンキーボードを変更して適応させます(@ および .com オプションを追加)。
Input タイプ: month
month タイプは、月を選択するための input フィールドです。次のように使用します:
実例
月と年を定義します(時刻情報なし):
誕生日 (月と年): <input type="month" name="bdaymonth">Input タイプ: number
number タイプは、数値を入力するためのフィールドです。また、入力可能な数値の制限も設定できます:
実例
数値入力フィールドを定義します(制限付き):
数量 ( 1 から 5 の間 ): <input type="number" name="quantity" min="1" max="5">使用できる属性は以下の通りです:
<table>
    <tr>
        <th>属性</th>
        <th>説明</th>
    </tr>
    <tr>
        <td>disabled</td>
        <td>入力フィールドを無効にする</td>
    </tr>
    <tr>
        <td>max</td>
        <td>許可される最大値を設定</td>
    </tr>
    <tr>
        <td>maxlength</td>
        <td>入力フィールドの最大文字数を設定</td>
    </tr>
    <tr>
        <td>min</td>
        <td>許可される最小値を設定</td>
    </tr>
    <tr>
        <td>pattern</td>
        <td>入力フィールドの検証パターンを設定</td>
    </tr>
    <tr>
        <td>readonly</td>
        <td>入力フィールドの値を変更不可にする</td>
    </tr>
    <tr>
        <td>required</td>
        <td>入力フィールドを必須にする</td>
    </tr>
    <tr>
        <td>size</td>
        <td>入力フィールドの可視文字数を設定</td>
    </tr>
    <tr>
        <td>step</td>
        <td>数値の有効な間隔を設定</td>
    </tr>
    <tr>
        <td>value</td>
        <td>入力フィールドのデフォルト値を設定</td>
    </tr>
</table>Input タイプ: range
range タイプは、範囲内の数値を入力するためのフィールドです。次のように使用します:
実例
滑り条として表示されます:
<input type="range" name="points" min="1" max="10">- max - 許可される最大値
- min - 許可される最小値
- step - 有効な数値の間隔
- value - デフォルト値
Input タイプ: search
search タイプは、検索フィールド(例:サイト検索や Google 検索)です。次のように使用します:
実例
検索フィールドを定義します:
Google 検索: <input type="search" name="googlesearch">Input タイプ: tel
tel タイプは、電話番号の入力フィールドです。次のように使用します:
実例
電話番号の入力フィールドを定義します:
電話番号: <input type="tel" name="usrtel">Input タイプ: time
time タイプは、時間を選択するためのフィールドです。次のように使用します:
実例
時刻情報を含まない時間を選択します:
時間を選択: <input type="time" name="usr_time">Input タイプ: url
url タイプは、URL を入力するためのフィールドです。フォーム送信時に url フィールドの値の妥当性が自動的に検証されます。次のように使用します:
実例
URL フィールドを定義します:
ホームページのURLを追加: <input type="url" name="homepage">ヒント: iPhone の Safari ブラウザでは、url 入力タイプをサポートしており、タッチスクリーンキーボードを変更して適応させます(.com オプションを追加)。
Input タイプ: week
week タイプは、週と年を選択するためのフィールドです。次のように使用します:
実例
週と年を定義します:
週を選択: <input type="week" name="week_year">HTML5 <input> タグ
| タグ | 説明 | 
|---|---|
| <input> | 入力フィールドを定義します。 | 
Q&A
Q1: 新しい HTML5 input タイプはすべてのブラウザでサポートされていますか?
いいえ、すべてのブラウザが新しい HTML5 input タイプをサポートしているわけではありません。しかし、サポートされていない場合でも通常のテキストフィールドとして表示されます。
Q2: email タイプの input フィールドに入力されたメールアドレスはどのように検証されますか?
フォーム送信時に、ブラウザが自動的にメールアドレスの形式が正しいかどうかを検証します。正しくない場合、フォームは送信されません。
Q3: range タイプの input フィールドはどのように使用しますか?
range タイプは、スライダーとして表示され、範囲内の数値を選択するために使用されます。min、max、および step 属性を使用して、選択可能な数値の範囲と間隔を