<input type=range>は、レンジ入力欄を表す際に使用します。
input要素のtype属性の値に range を指定すると、 要素の値はレンジ内の数値を表す文字列を表します。 type=rangeで指定するのは正確さを重視した数値ではなく、 一定の範囲内における「このくらい」という感覚で入力する数値です。
デフォルト値は、最小値に最小値と最大値の差の半分を加えた値です。 ただし、最大値として指定した値が最小値より小さい場合には、最小値がデフォルト値になります。
value属性を指定する場合、 その値が空でないなら有効な数値である必要があります。
min属性を指定する場合、その値は有効な数値である必要があります。 デフォルトの最小値は0です。
max属性を指定する場合、その値は有効な数値である必要があります。 デフォルトの最大値は100です。
step属性は、変動幅を指定します。 値は数値で表され、デフォルトのステップ値は1です。
以下のサンプルでは、value属性の値がそれぞれ51と49に指定されていますが、 step属性の値が20なのでステップの不一致が発生しています。 この場合、最も近い数値に丸められるため、上の初期値は60、下の初期値は40に設定されます。
<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要素によるオートコンプリートリストを適用した使用例です。
<input type="range" name="a" list="a-values">
<datalist id="a-values">
<option value="10" label="Low">
<option value="90" label="High">
</datalist>