举个例子,可以查看这个 fiddle (请勿在IE中查看)。
(您可以在此链接中查看该控件的描述。)
她使用 -ms-fill-lower 和-ms-fill-upper 控制滑块两侧的颜色,如下所示:
input[type=range]::-ms-track {
width: 300px;
height: 5px;
/*remove bg colour from the track, we'll use ms-fill-lower and ms-fill-upper instead */
background: transparent;
/*leave room for the larger thumb to overflow with a transparent border */
border-color: transparent;
border-width: 6px 0;
/*remove default tick marks*/
color: transparent;
}
input[type=range]::-ms-fill-lower {
background: #777;
border-radius: 10px;
}
input[type=range]::-ms-fill-upper {
background: #ddd;
border-radius: 10px;
}
input[type=range]::-ms-thumb {
border: none;
height: 16px;
width: 16px;
border-radius: 50%;
background: goldenrod;
}
input[type=range]:focus::-ms-fill-lower {
background: #888;
}
input[type=range]:focus::-ms-fill-upper {
background: #ccc;
}
(来源: brennaobrien.com)
然而,据我所知,... ::-ms- ...
伪元素只在 IE 中有效。在 Chrome 中,上述代码似乎没有任何效果。在 Chrome 中,我只得到这个:
(来源: brennaobrien.com)
我该怎么做才能跨浏览器实现这个效果呢?
谢谢!