范围滑块样式生成器 - 自定义input range外观
可视化配置范围滑块的轨道、滑块、填充颜色,生成跨浏览器的CSS代码。
UD5工具箱
精选 8 种不同风格的 CSS Range 滑块样式,涵盖极简、渐变、霓虹、玻璃拟态等多种设计趋势。点击复制即可用于你的项目。
.rs-minimal {
-webkit-appearance: none;
appearance: none;
background: transparent;
height: 24px;
}
.rs-minimal::-webkit-slider-runnable-track {
height: 3px;
background: #e2e8f0;
border-radius: 2px;
}
.rs-minimal::-webkit-slider-thumb {
-webkit-appearance: none;
width: 18px; height: 18px;
background: #3b82f6;
border-radius: 50%;
margin-top: -7.5px;
border: 3px solid #fff;
box-shadow: 0 1px 4px rgba(0,0,0,0.15);
}
.rs-minimal::-moz-range-track {
height: 3px;
background: #e2e8f0;
border-radius: 2px;
}
.rs-minimal::-moz-range-thumb {
width: 18px; height: 18px;
background: #3b82f6;
border-radius: 50%;
border: 3px solid #fff;
}
.rs-gradient {
-webkit-appearance: none;
appearance: none;
background: transparent;
height: 28px;
}
.rs-gradient::-webkit-slider-runnable-track {
height: 7px;
background: linear-gradient(90deg, #a855f7, #ec4899, #f97316);
border-radius: 10px;
}
.rs-gradient::-webkit-slider-thumb {
-webkit-appearance: none;
width: 22px; height: 22px;
background: #fff;
border-radius: 50%;
margin-top: -7.5px;
border: 3px solid #a855f7;
box-shadow: 0 2px 8px rgba(168,85,247,0.35);
}
.rs-gradient::-moz-range-track {
height: 7px;
background: linear-gradient(90deg, #a855f7, #ec4899, #f97316);
border-radius: 10px;
}
.rs-gradient::-moz-range-thumb {
width: 22px; height: 22px;
background: #fff;
border-radius: 50%;
border: 3px solid #a855f7;
}
.rs-neon {
-webkit-appearance: none;
appearance: none;
background: transparent;
height: 30px;
}
.rs-neon::-webkit-slider-runnable-track {
height: 5px;
background: #1e3a3f;
border-radius: 4px;
box-shadow: 0 0 8px rgba(6,182,212,0.3);
}
.rs-neon::-webkit-slider-thumb {
-webkit-appearance: none;
width: 22px; height: 22px;
background: #06b6d4;
border-radius: 50%;
margin-top: -8.5px;
border: none;
box-shadow: 0 0 16px #06b6d4, 0 0 32px rgba(6,182,212,0.6);
}
.rs-neon::-moz-range-track {
height: 5px;
background: #1e3a3f;
border-radius: 4px;
}
.rs-neon::-moz-range-thumb {
width: 22px; height: 22px;
background: #06b6d4;
border-radius: 50%;
border: none;
box-shadow: 0 0 16px #06b6d4;
}
.rs-cute {
-webkit-appearance: none;
appearance: none;
background: transparent;
height: 32px;
}
.rs-cute::-webkit-slider-runnable-track {
height: 10px;
background: #fce7f3;
border-radius: 20px;
box-shadow: inset 0 1px 3px rgba(0,0,0,0.06);
}
.rs-cute::-webkit-slider-thumb {
-webkit-appearance: none;
width: 26px; height: 26px;
background: #f472b6;
border-radius: 50%;
margin-top: -8px;
border: 4px solid #fff;
box-shadow: 0 3px 10px rgba(244,114,182,0.4);
}
.rs-cute::-moz-range-track {
height: 10px;
background: #fce7f3;
border-radius: 20px;
}
.rs-cute::-moz-range-thumb {
width: 26px; height: 26px;
background: #f472b6;
border-radius: 50%;
border: 4px solid #fff;
}
.rs-darktech {
-webkit-appearance: none;
appearance: none;
background: transparent;
height: 26px;
}
.rs-darktech::-webkit-slider-runnable-track {
height: 4px;
background: #334155;
border-radius: 0;
}
.rs-darktech::-webkit-slider-thumb {
-webkit-appearance: none;
width: 16px; height: 22px;
background: #10b981;
border-radius: 3px;
margin-top: -9px;
border: none;
box-shadow: 0 0 6px rgba(16,185,129,0.5);
}
.rs-darktech::-moz-range-track {
height: 4px;
background: #334155;
border-radius: 0;
}
.rs-darktech::-moz-range-thumb {
width: 16px; height: 22px;
background: #10b981;
border-radius: 3px;
border: none;
}
.rs-glass {
-webkit-appearance: none;
appearance: none;
background: transparent;
height: 30px;
}
.rs-glass::-webkit-slider-runnable-track {
height: 6px;
background: rgba(255,255,255,0.45);
border-radius: 8px;
backdrop-filter: blur(4px);
box-shadow: 0 1px 4px rgba(0,0,0,0.08),
inset 0 1px 2px rgba(255,255,255,0.6);
}
.rs-glass::-webkit-slider-thumb {
-webkit-appearance: none;
width: 24px; height: 24px;
background: rgba(255,255,255,0.85);
border-radius: 50%;
margin-top: -9px;
border: 2px solid rgba(255,255,255,0.9);
box-shadow: 0 3px 10px rgba(0,0,0,0.12),
0 0 0 4px rgba(148,163,184,0.15);
}
.rs-glass::-moz-range-track {
height: 6px;
background: rgba(255,255,255,0.45);
border-radius: 8px;
}
.rs-glass::-moz-range-thumb {
width: 24px; height: 24px;
background: rgba(255,255,255,0.85);
border-radius: 50%;
border: 2px solid rgba(255,255,255,0.9);
}
.rs-retro {
-webkit-appearance: none;
appearance: none;
background: transparent;
height: 28px;
}
.rs-retro::-webkit-slider-runnable-track {
height: 7px;
background: linear-gradient(180deg, #d4c5b9 0%, #c4b5a5 40%, #b8a898 100%);
border-radius: 4px;
border: 1px solid #a89888;
box-shadow: inset 0 1px 3px rgba(0,0,0,0.2);
}
.rs-retro::-webkit-slider-thumb {
-webkit-appearance: none;
width: 20px; height: 20px;
background: linear-gradient(180deg, #f5ebe0 0%, #d4b896 100%);
border-radius: 50%;
margin-top: -7.5px;
border: 2px solid #a08060;
box-shadow: 0 2px 6px rgba(0,0,0,0.25);
}
.rs-retro::-moz-range-track {
height: 7px;
background: linear-gradient(180deg, #d4c5b9, #c4b5a5, #b8a898);
}
.rs-retro::-moz-range-thumb {
width: 20px; height: 20px;
background: linear-gradient(180deg, #f5ebe0, #d4b896);
border-radius: 50%;
border: 2px solid #a08060;
}
.rs-sharp {
-webkit-appearance: none;
appearance: none;
background: transparent;
height: 26px;
}
.rs-sharp::-webkit-slider-runnable-track {
height: 4px;
background: #1a1a1a;
border-radius: 1px;
}
.rs-sharp::-webkit-slider-thumb {
-webkit-appearance: none;
width: 14px; height: 20px;
background: #f59e0b;
border-radius: 2px;
margin-top: -8px;
border: none;
box-shadow: 0 2px 4px rgba(0,0,0,0.3);
}
.rs-sharp::-moz-range-track {
height: 4px;
background: #1a1a1a;
border-radius: 1px;
}
.rs-sharp::-moz-range-thumb {
width: 14px; height: 20px;
background: #f59e0b;
border-radius: 2px;
border: none;
}
appearance: none),然后分别对轨道(track)和滑块(thumb)使用伪元素进行样式设置。Chrome/Safari 使用 ::-webkit-slider-runnable-track 和 ::-webkit-slider-thumb,Firefox 使用 ::-moz-range-track 和 ::-moz-range-thumb。本页面的 8 种预设均提供完整的跨浏览器 CSS 代码。
::-moz-range-progress 伪元素,可以单独设置滑块左侧(已选部分)的轨道样式。Chrome 目前不支持该特性,但可以通过在 ::-webkit-slider-runnable-track 上使用 linear-gradient 结合 CSS 变量来模拟进度填充效果,需要少量 JavaScript 动态更新变量值。
appearance: none(包括 -webkit-appearance: none);② 只写了 Webkit 伪元素而忽略了 Firefox 的 ::-moz-range-* 系列;③ thumb 的 margin-top 计算错误导致滑块与轨道错位,通常需要根据 (轨道高度 - thumb高度) / 2 来设置负 margin。
box-shadow 或 border 扩展可点击区域。本页面的"圆润桃粉"风格使用 26px 的 thumb,在移动端触控体验良好。
<datalist> 标签配合 list 属性添加刻度标记,但样式自定义受限。更灵活的方式是使用绝对定位的 <div> 元素在轨道上放置刻度线和标签,配合 JavaScript 动态更新当前值。也可以使用 CSS background 的 repeating-linear-gradient 在轨道上绘制刻度线图案。
backdrop-filter 用于玻璃拟态风格)在旧版浏览器中会降级为不透明效果,不影响功能使用。
可视化配置范围滑块的轨道、滑块、填充颜色,生成跨浏览器的CSS代码。
通过可视化控件定制滚动条轨道、滑块、按钮等伪元素样式,即时预览并复制生成代码。
配置多屏垂直或水平滑动卡片,生成带CSS Scroll Snap的HTML页面代码。
在页面上叠加可拖拽的半透明网格线,辅助网格布局对齐。
通过叠加多个阴影创建柔和且真实的UI投影,导出CSS。
配置多个背景层或前景层,设定各层滚动速度因子,生成完整视差页面代码。
浏览并一键复制常见CSS动画(跳动、淡入、滑动等)的@keyframes代码。
为页面上使用CSS Grid的元素显示网格线和名称,辅助布局开发和调试。
选择触发位置、箭头方向与样式,生成轻量悬停提示框代码。
并列播放所有CSS内置缓动函数(ease, linear等)的动画效果,方便对比选择。
自动生成适合打印的`@media print`样式,重置背景色、字号并隐藏导航。
制作像荧光笔划过的高亮背景或扫描下划线效果,导出类名。
拖拽顶点或选择预定义形状,可视生成CSS clip-path多边形、圆形、椭圆等,实时预览并复制代码。
粘贴JSON对象,生成可折叠的树形视图,点击节点复制其键值路径,方便调试。
在线生成可折叠的手风琴面板,自定义标题、内容与图标,支持纯CSS或简单JS切换。
创建带有复选框或标签的多选下拉列表,支持删除已选项,键盘可全控。
选择背景图片(或使用占位色),配置标题、副标题和按钮,生成Hero区域代码。
拖拽调节Flex容器和子项属性,即时可视化响应效果,同时显示CSS代码,边学边用。
调节光源角度、颜色和距离,生成凹凸柔和的新拟态UI元素CSS盒阴影代码,潮流设计工具。
列出所有标准 CSS 光标值(pointer, grab, zoom-in 等),鼠标悬停实时查看对应光标样式并复制代码。
为内容区域生成灰色闪烁的骨架屏占位代码,包含卡片、标题等组件样式。
调节宽度、颜色、条纹动画等参数,实时预览并生成进度条HTML/CSS。
创建带有向下箭头和自定选项风格的自定义选择框HTML+CSS代码。
调整透明度、模糊度和边框,实时预览毛玻璃UI卡片,生成兼容CSS backdrop-filter代码。
加载Lottie动画JSON文件,播放并控制速度、方向,预览动效效果。
选择多张图片或纯色叠加,切换所有CSS混合模式并实时预览图层效果。
调节背景色、亮阴影与暗阴影距离,生成新拟态风格按钮/卡片样式并导出代码。
设定最小、首选、最大三个尺寸及视口范围,生成响应式CSS clamp()表达式。
可视化配置<dialog>元素外观与行为,生成现代化、无障碍友好的模态框代码。
生成具有扫描线、荧光拖影和屏幕弯曲效果的纯CSS复古电脑终端样式。