Snippets Slider

Bootstrap 5 Range Slider with Fill and Tick Marks

Two range sliders with a filled track, configurable tick marks and a live value readout, styled for sizes and percentages.

Bootstrap 5 No jQuery Feb 2020 3.1K views

<section class="wdw-stage">
  <div class="container" style="max-width: 760px">
    <div class="text-center mb-4">
      <span class="wdw-eyebrow">Configurator</span>
      <h2 class="wdw-heading display-6 mt-1 mb-1">Pick your size</h2>
      <p class="wdw-muted mb-0">Slide to set the dimension.</p>
    </div>
    <div class="vstack gap-4">
      <div class="wdw-card p-4 p-md-5 wdw-slider" data-min="0" data-max="300" data-step="10" data-ticks="6" data-value="150" data-unit="cm">
        <div class="d-flex justify-content-between align-items-baseline mb-4">
          <label class="fw-semibold" for="sizeRange">Total size</label>
          <output class="wdw-heading fs-2" for="sizeRange"><span class="wdw-val">150</span> <small class="wdw-muted fs-6 fw-semibold">cm</small></output>
        </div>
        <div class="wdw-track">
          <input type="range" class="wdw-range" id="sizeRange" min="0" max="300" step="10" value="150">
          <div class="wdw-ticks" aria-hidden="true"></div>
        </div>
        <div class="wdw-labels small wdw-muted" aria-hidden="true"></div>
      </div>
      <div class="wdw-card p-4 p-md-5 wdw-slider" data-min="0" data-max="100" data-step="5" data-ticks="4" data-value="35" data-unit="%">
        <div class="d-flex justify-content-between align-items-baseline mb-4">
          <label class="fw-semibold" for="discRange">Deposit</label>
          <output class="wdw-heading fs-2" for="discRange"><span class="wdw-val">35</span> <small class="wdw-muted fs-6 fw-semibold">%</small></output>
        </div>
        <div class="wdw-track">
          <input type="range" class="wdw-range" id="discRange" min="0" max="100" step="5" value="35">
          <div class="wdw-ticks" aria-hidden="true"></div>
        </div>
        <div class="wdw-labels small wdw-muted" aria-hidden="true"></div>
      </div>
    </div>
  </div>
</section>

Built on Bootstrap 5.3.8 with plain JavaScript — no jQuery. Supports light and dark mode via data-bs-theme.

Free to use in personal and commercial projects under the MIT license.