javascript - 如何使用 CSS3 和 Javascript 创建双范围 slider ?

标签 javascript jquery html css rangeslider

我正在尝试通过使用两个范围元素来创建价格范围 像这样:

CSS 代码:

.first{
    position : relative;
    top :10px;
    left :10px;
    margin : 0;
    padding : 0;
    border : 1px solid red;
    border-top : 4px solid transparent;
    border-radius :3px;
    z-index:0;
}

.next{
    position : relative;
    top :0px;
    left :-153px; 
    margin : 0;
    padding : 0;
    border : 1px solid red;
    border-bottom : 1px solid transparent;
    border-radius :3px;
    z-index : 4;
}

HTML代码:

<span>price :</span>
<input class ="first" type="range" min="0" max="10000" step="100" value="0" multiple>
<input class ="next" type="range" min="0" max="10000" step="100" value="10000" multiple>

是否可以将主题样式设置为看起来像 jQuery 范围 slider ?

最佳答案

CSS 代码:

input[type=range] {
    -webkit-appearance: none;
    width: 100%;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
}

input[type=range]:focus {
    outline: none;
}

input[type=range]::-ms-track {
    width: 100%;
    cursor: pointer;
    background: transparent;
    border-color: transparent;
    color: transparent;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    border: 1px solid #d3d3d3;
    height: 16px;
    width: 16px;
    border-radius: 3px;
    background: #e6e6e6;
    cursor: pointer;
    margin-top: -3px;
}

input[type=range]::-webkit-slider-thumb:hover {
    background: #DADADA;
    border: 1px solid #999999;
}

input[type=range]::-moz-range-thumb {
    -moz-appearance: none;
    border: 1px solid #d3d3d3;
    height: 16px;
    width: 16px;
    border-radius: 3px;
    background: #e6e6e6;
    cursor: pointer;
}

input[type=range]::-ms-thumb {
    border: 1px solid #d3d3d3;
    height: 16px;
    width: 16px;
    border-radius: 3px;
    background: #e6e6e6;
    cursor: pointer;
}

input[type=range]::-ms-thumb:hover {
    background: #DADADA;
    border: 1px solid #999999;
}

input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 12px;
    cursor: pointer;
    background: #FFF;
    border-radius: 5px;
    border: 1px solid #010101;
}

input[type=range]:focus::-webkit-slider-runnable-track {
    background: #FFF;
}

input[type=range]::-moz-range-track {
    width: 100%;
    height: 12px;
    cursor: pointer;
    background: #FFF;
    border-radius: 5px;
    border: 1px solid #aaaaaa;
}

input[type=range]::-ms-track {
    width: 100%;
    height: 12px;
    cursor: pointer;
    background: transparent;
    border-color: transparent;
    border-width: 16px 0;
    color: transparent;
}

input[type=range]::-ms-fill-lower {
    background: #2a6495;
    border: 1px solid #aaaaaa;
    border-radius: 2.6px;
}

input[type=range]:focus::-ms-fill-lower {
    background: #FFF;
}

input[type=range]::-ms-fill-upper {
    background: #FFF;
    border: 1px solid #aaaaaa;
    border-radius: 5px;
}

input[type=range]:focus::-ms-fill-upper {
    background: #FFF;
}

关于javascript - 如何使用 CSS3 和 Javascript 创建双范围 slider ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28516586/

相关文章:

javascript - 为什么反序列化我的目标数组的序列化副本可以修复内存泄漏问题?

jquery - 使用 Jquery 销毁和重新创建相同的 DOM 元素

javascript - Ajax:尝试调用 PHP 脚本时出现 "no element found"

html - 如何从表格的悬停中排除悬停的 td?

html - “悬停图像显示图像”CSS 无法正常工作

javascript - 在哪里处理 REST api 中的 promise 错误?

javascript - 动态博客文章上的语法突出显示不起作用

javascript - 生成的 HTML 与 JSON、Google Apps 脚本

javascript - 函数读取不传递给变量的 JSON 数据

javascript - 将数据导入到嵌套文件夹中