Skip to content

Range ​

A styled <input type="range"> slider with a custom track and thumb that match the library's color scheme.

Basic usage ​

Value: 60

Tailwind v4
vue
<script setup>
import { ref } from 'vue'
const vol = ref(60)
</script>

<template>
  <Range v-model="vol" label="Volume" />
</template>

Custom min, max, step ​

Tailwind v4
vue
<Range v-model="opacity" label="Opacity" :min="0" :max="100" :step="10" />

Fine step (step=0.5) ​

Tailwind v4
vue
<Range v-model="fine" label="Temperature" :min="0" :max="50" :step="0.5" />

Hide value display ​

Tailwind v4
vue
<Range v-model="vol" label="Volume" :show-value="false" />

Disabled ​

Tailwind v4
vue
<Range :model-value="40" label="Locked" disabled />

Props ​

PropTypeDefaultDescription
modelValuenumber—Current slider value
minnumber0Minimum value
maxnumber100Maximum value
stepnumber1Step increment
labelstring—Label rendered above the slider
showValuebooleantrueWhether to display the current value next to the label
disabledbooleanfalseDisables interaction

Emits ​

EventPayloadDescription
update:modelValuenumberNew numeric value as the thumb moves

Private — Jetpack Labs internal use only