Skip to main content Skip to docs navigation
Range

カスタムレンジ入力を使用すると、クロスブラウザで一貫したスタイリングが可能になり、カスタマイズも可能です。

概要

<input type="range">.form-rangeを適用します。トラック(背景)とつまみ(値)は、ブラウザ間で同じように表示されるようにスタイリングされています。 進行状況を視覚的に示す手段として、左または右からトラックを「埋める」ことをサポートしているのはFirefoxだけなので、現時点ではサポートしていません。

html
<label for="customRange1" class="form-label">Example range</label>
<input type="range" class="form-range" id="customRange1">

無効化

入力にdisabled属性(Boolean)を追加すると、グレーアウトしたような外観になり、ポインターイベントが削除されます。

html
<label for="disabledRange" class="form-label">Disabled range</label>
<input type="range" class="form-range" id="disabledRange" disabled>

最小・最大値

範囲入力には、minmaxの暗黙の値があり、それぞれ0100となっています。これらの値はminmax属性を使って新たに指定することができます。

html
<label for="customRange2" class="form-label">Example range</label>
<input type="range" class="form-range" min="0" max="5" id="customRange2">

ステップ

デフォルトでは、レンジ入力は整数値に"snap"します。これを変更するには、stepの値を指定することができます。以下の例では、step="0.5"を用いてステップ数を2倍にしています。

html
<label for="customRange3" class="form-label">Example range</label>
<input type="range" class="form-range" min="0" max="5" step="0.5" id="customRange3">

CSS

Sass変数

$form-range-track-width:          100%;
$form-range-track-height:         .5rem;
$form-range-track-cursor:         pointer;
$form-range-track-bg:             var(--#{$prefix}tertiary-bg);
$form-range-track-border-radius:  1rem;
$form-range-track-box-shadow:     $box-shadow-inset;

$form-range-thumb-width:                   1rem;
$form-range-thumb-height:                  $form-range-thumb-width;
$form-range-thumb-bg:                      $component-active-bg;
$form-range-thumb-border:                  0;
$form-range-thumb-border-radius:           1rem;
$form-range-thumb-box-shadow:              0 .1rem .25rem rgba($black, .1);
$form-range-thumb-focus-box-shadow:        0 0 0 1px $body-bg, $input-focus-box-shadow;
$form-range-thumb-focus-box-shadow-width:  $input-focus-width; // For focus box shadow issue in Edge
$form-range-thumb-active-bg:               tint-color($component-active-bg, 70%);
$form-range-thumb-disabled-bg:             var(--#{$prefix}secondary-color);
$form-range-thumb-transition:              background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;