UNPKG

react-range-slider-input

Version:

React component wrapper for range-slider-input

78 lines (77 loc) 1.67 kB
.range-slider { touch-action: none; -webkit-tap-highlight-color: transparent; -webkit-user-select: none; user-select: none; cursor: pointer; display: block; position: relative; width: 100%; height: 8px; background: #ddd; border-radius: 4px; } .range-slider[data-vertical] { height: 100%; width: 8px; } .range-slider[data-disabled] { opacity: 0.5; cursor: not-allowed; } .range-slider .range-slider__thumb { position: absolute; z-index: 3; top: 50%; width: 24px; height: 24px; transform: translate(-50%, -50%); border-radius: 50%; background: #2196f3; } .range-slider .range-slider__thumb:focus-visible { outline: 0; box-shadow: 0 0 0 6px rgba(33, 150, 243, 0.5); } .range-slider[data-vertical] .range-slider__thumb { left: 50%; } .range-slider .range-slider__thumb[data-disabled] { z-index: 2; } .range-slider .range-slider__range { position: absolute; z-index: 1; transform: translate(0, -50%); top: 50%; width: 100%; height: 100%; background: #51adf6; } .range-slider[data-vertical] .range-slider__range { left: 50%; transform: translate(-50%, 0); } .range-slider input[type="range"] { -webkit-appearance: none; pointer-events: none; position: absolute; z-index: 2; top: 0; left: 0; width: 0; height: 0; background-color: transparent; } .range-slider input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; } .range-slider input[type="range"]::-moz-range-thumb { width: 0; height: 0; border: 0; } .range-slider input[type="range"]:focus { outline: 0; }