Skip to main content Skip to docs navigation
View on GitHub

範圍 (Range)

使用我們的自定義的 Range Inputs 可實現一致的跨瀏覽器樣式和內建自定義。

概觀

創建自定義的 <input type="range"> 並使用 .form-range 控制。軌道 (背景) 與 thumb (值) 的樣式在不同瀏覽器間會一致的呈現。由於只有 Edge Legacy 和 Firefox 支持從 thumb 的左側或右側 “填滿” 它們的軌跡、以視覺化的方式指示進度,因此 Bootstrap 目前並沒有支持。

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

禁用

在 input 上添加布林屬性 disabled 來賦予灰色的外觀並移除 pointer 事件。

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

最小與最大

範圍輸入有隱含值 minmax, 0100 的區別,可以為 minmax 屬性賦予新的值。

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

間距數值 (steps)

預設的情況下,範圍輸入會 “讀取” 整數值。您也可以使用 step 值來改變。舉例如下,使用 step="0.5" 來加倍每一間距數值。

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

Sass

Variables

$form-range-track-width:          100%;
$form-range-track-height:         .5rem;
$form-range-track-cursor:         pointer;
$form-range-track-bg:             $gray-300;
$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:             $gray-500;
$form-range-thumb-transition:              background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;