Back to application components
Range Inputs
Range input slider components for volume controls, price filters, and value selectors with custom styling.
0/5 Dark Mode (Request)Updated: Nov 14, 2025
<label for="maxVolume">
<span class="block text-sm font-medium text-gray-900">Max Volume</span>
<input
type="range"
name="maxVolume"
id="maxVolume"
min="0"
max="100"
value="20"
class="mt-3 h-3.5 w-full appearance-none rounded-full bg-gray-300 [&::-webkit-slider-thumb]:size-7 [&::-webkit-slider-thumb]:cursor-pointer [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border-[6px] [&::-webkit-slider-thumb]:border-gray-500 [&::-webkit-slider-thumb]:bg-gray-200"
/>
</label><label for="maxVolume">
<span class="block text-sm font-medium text-gray-900">Max Volume</span>
<div class="mt-3 flex items-center gap-3">
<input
type="range"
name="maxVolume"
id="maxVolume"
min="0"
max="100"
value="20"
class="h-3.5 w-full appearance-none rounded-full bg-gray-300 [&::-webkit-slider-thumb]:size-7 [&::-webkit-slider-thumb]:cursor-pointer [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border-[6px] [&::-webkit-slider-thumb]:border-gray-500 [&::-webkit-slider-thumb]:bg-gray-200"
/>
<span class="text-sm/none font-medium text-gray-700">20%</span>
</div>
</label><label for="maxVolume">
<span class="block text-sm font-medium text-gray-900">Max Volume</span>
<input
type="range"
name="maxVolume"
id="maxVolume"
min="0"
max="100"
value="20"
class="mt-3 h-3.5 w-full appearance-none rounded-full bg-gray-300 [&::-webkit-slider-thumb]:size-7 [&::-webkit-slider-thumb]:cursor-pointer [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border-[6px] [&::-webkit-slider-thumb]:border-gray-500 [&::-webkit-slider-thumb]:bg-gray-200"
/>
<div class="mt-1 flex items-center justify-between">
<span class="text-xs font-medium text-gray-700">0%</span>
<span class="text-xs font-medium text-gray-700">100%</span>
</div>
</label><label for="maxVolume">
<span class="block text-sm font-medium text-gray-900">Max Volume</span>
<input
type="range"
name="maxVolume"
id="maxVolume"
min="0"
max="100"
value="20"
list="volumeTicks"
class="mt-1 w-full"
/>
<datalist id="volumeTicks">
<option value="0"></option>
<option value="25"></option>
<option value="50"></option>
<option value="75"></option>
<option value="100"></option>
</datalist>
</label><label for="maxVolume">
<span class="block text-sm font-medium text-gray-900">Max Volume</span>
<input
type="range"
name="maxVolume"
id="maxVolume"
min="0"
max="100"
value="20"
list="volumeTicks"
class="mt-1 w-full"
/>
<datalist
id="volumeTicks"
class="flex w-full flex-col justify-between [writing-mode:vertical-lr]"
>
<option value="0" label="0"></option>
<option value="25" label="25"></option>
<option value="50" label="50"></option>
<option value="75" label="75"></option>
<option value="100" label="100"></option>
</datalist>
</label>