<input type=range> …… レンジ入力欄を表す
広告
<input type=range>は、レンジ入力欄を表す際に使用します。
input要素のtype属性の値に range を指定すると、
要素の値はレンジ内の数値を表す文字列を表します。
type=rangeで指定するのは正確さを重視した数値ではなく、
一定の範囲内における「このくらい」という感覚で入力する数値です。
■属性
- name属性
- フォーム部品に名前をつけます。
- value属性
- 入力される値を指定します。
input type=rangeの場合、value属性の値が空でないなら有効な数値である必要があります。 - min属性
- 最小値を指定します。
input type=rangeの場合、min属性の値は有効な数値である必要があります。
デフォルトの最小値は0です。 - max属性
- 最大値を指定します。
input type=rangeの場合、max属性の値は有効な数値である必要があります。
デフォルトの最大値は100です。 - step属性
- 変動幅を指定します。
input type=rangeの場合、step属性の値は数値で表され、デフォルトのステップ値は1です。
■使用例
以下のサンプルでは、value属性の値がそれぞれ51と49に指定されていますが、
step属性の値が20なのでステップの不一致が発生しています。
この場合、最も近い数値に丸められるため、上の初期値は60、下の初期値は40に設定されます。
HTMLソース
<p><input type="range" min=0 max=100 step=20 value=51></p>
<p><input type="range" min=0 max=100 step=20 value=49></p>
↓↓↓
ブラウザ上の表示
■使用例
以下のサンプルは、input要素にlist属性を指定して、
datalist要素によるオートコンプリートリストを適用した使用例です。
HTMLソース
<input type="range" name="a" list="a-values">
<datalist id="a-values">
<option value="10" label="Low">
<option value="90" label="High">
</datalist>
↓↓↓
ブラウザ上の表示
value属性のデフォルト値について
input type=rangeの場合、value属性のデフォルト値は、最小値に最小値と最大値の差の半分を加えた値です。
例:最小値40、最大値100の場合
デフォルト値 = 最小値 + (最大値 – 最小値) / 2 なので、デフォルト値は 70
70 = 40 + (100 – 40) / 2
ただし、最大値として指定した値が最小値より小さい場合には、最小値がデフォルト値になります。
例:最小値40、最大値20の場合
最小値 > 最大値 なので、デフォルト値は 40
■使用例
筆者の閲覧環境では想定した表示になりませんでしたが、参考までにサンプルソースを掲載します。
HTMLソース
<p><input type="range" min=40 max=100></p>
<p><input type="range" min=40 max=20></p>
<p><input type="range" value="70"></p>
<p><input type="range" value="40"></p>
↓↓↓
ブラウザ上の表示
input要素の終了タグについて
HTMLの仕様では、input要素には終了タグ</input>はありません。
■関連項目
- <form> …… フォームを表す
- <label> …… フォーム入力欄のキャプションを表す
- <input> …… フォーム入力欄を表す
- <input type=hidden> …… 非表示データを表す
- <input type=text> …… 1行プレーンテキストの入力欄を表す
- <input type=search> …… 検索用テキストの入力欄を表す
- <input type=tel> …… 電話番号の入力欄を表す
- <input type=url> …… URLの入力欄を表す
- <input type=email> …… 電子メールアドレスの入力欄を表す
- <input type=password> …… パスワードの入力欄を表す
- <input type=date> …… 日付の入力欄を表す
- <input type=month> …… 月の入力欄を表す
- <input type=week> …… 週の入力欄を表す
- <input type=time> …… 時刻の入力欄を表す
- <input type=datetime-local> …… ローカル日時の入力欄を表す
- <input type=number> …… 数値の入力欄を表す
- <input type=range> …… レンジ入力欄を表す
- <input type=color> …… 色の入力欄を表す
- <input type=checkbox> …… チェックボックスの入力欄を表す
- <input type=radio> …… ラジオボタンの入力欄を表す
- <input type=file> …… 選択ファイルを表す
- <input type=submit> …… フォーム送信ボタンを表す
- <input type=image> …… 画像ボタンを表す
- <input type=reset> …… リセットボタンを表す
- <input type=button> …… 汎用ボタンを表す
- <input maxlength=文字数> …… 入力を許容する最大文字数を指定する
- <input minlength=文字数> …… 入力を許容する最小文字数を指定する
- <input size=サイズ> …… 入力欄のサイズを指定する
- <input readonly> …… 読み取り専用にする
- <input required> …… 入力必須にする
- <input multiple> …… 複数選択可にする
- <input pattern=入力パターン> …… 入力を許容するパターンを指定する
- <input min=数値> …… 入力を許容する最小値を指定する
- <input max=数値> …… 入力を許容する最大値を指定する
- <input step=ステップ値> …… 入力のステップ値を指定する
- <input list=データリストID> …… データリストを紐づける
- <input placeholder=入力ヒント> …… 入力の際のヒントを表す
- <button> …… ボタンを表す
- <select> …… セレクトボックスを表す
- <datalist> …… 選択肢のデータリストを表す
- <optgroup> …… 選択肢グループを表す
- <option> …… 選択肢を表す
- <textarea> …… 複数行プレーンテキストの入力欄を表す
- <output> …… 実行結果の出力を表す
- <progress> …… タスクの進行状況を表す
- <meter> …… 既知の範囲内の測定値を表す
- <fieldset> …… フォームグループを表す
- <legend> …… フォームグループのキャプションを表す
広告