メインコンテンツにスキップ ドキュメントナビゲーションにスキップ

レンジ入力(Range) v5.0.0設定変更

ブラウザのデフォルトのレンジ入力をカスタムバージョンに置き換え。

※"v5.0.0"での変更はv5.0.0-alpha版、v5.0.0-beta版での変更も含みます。

※"v5.2.0"での変更はv5.2.0-beta1での変更も含みます。
※"v5.3.0"での変更はv5.3.0-alpha版での変更も含みます。
このページの項目 v5.0.0設定変更

概要(Overview)v5.0.0-alpha1クラス名変更

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

見本
Bootstrap5.xの設定例 緑背景が変更箇所
<div class="mb-3">
  <label for="formRange1" class="form-label">レンジの実例</label>
  <input type="range" class="form-range" id="formRange1">
</div>
.mb-3>label.form-label+input:range.form-range
※Bootstrap4.xの設定例 赤背景が変更箇所
カスタム・レンジ入力<div class="form-group">
  <label for="formRange1">レンジの実例</label>
  <input type="range" class="custom-range" id="formRange1">
</div>
【設定】
  • input[type="range"].form-range を入れる
【変更履歴】
  • 【v5.0.0-alpha1】
    • .custom-range.form-range
    • <label>.form-label を入れる

レンジの無効化(Disabled)

レンジ入力に disabled ブール属性を追加してグレー表示にし、ポインタイベントを削除し、フォーカスを防ぐ。

見本
設定例
<label for="disabledRange" class="form-label">無効化したレンジ入力</label>
<input type="range" class="form-range" id="disabledRange" disabled>
【設定】
  • 無効化したいレンジ入力(input[type="range"].form-range)に [disabled] を追加

最小と最大(Min and max)

レンジ入力は、それぞれ minmax0100 の暗黙の値を持つ。min 属性と max 属性を使用するユーザーには新しい値が指定できる。

見本
Bootstrap5.xの設定例 緑背景が変更箇所
<label for="formRange2" class="form-label">レンジの実例</label>
<input type="range" class="form-range" min="0" max="5" id="formRange2">

ステップ(Steps)

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

見本
Bootstrap5.xの設定例 緑背景が変更箇所
<label for="formRange3" class="form-label">レンジの実例</label>
<input type="range" class="form-range" min="0" max="5" step="0.5" id="formRange3">

CSS v5.0.0-beta3追加、v5.3.0Sassから名称変更

Sass変数(Sass variables)v5.3.0変数から名称変更

デフォルトの設定
scss/_variables.scss 内 form-range-variables の設定$form-range-track-width:          100%;
$form-range-track-height:         .5rem;
$form-range-track-cursor:         pointer;
$form-range-track-bg:             var(--#{$prefix}secondary-bg);
$form-range-track-border-radius:  1rem;
$form-range-track-box-shadow:     var(--#{$prefix}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; // 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;