您可以使用::-webkit-slider-thumb
,::-moz-range-thumb
&更改HTML5滑块的“拇指”(旋钮)的CSS样式。 ::-ms-thumb
选择器。
您可以使用::-webkit-slider-runnable-track
,::-moz-range-track
&更改HTML5滑块的“轨道”(凹槽)的CSS样式。 ::-ms-track
选择器。
但是如果我想通过JavaScript改变“拇指”或“跟踪”的样式呢?
这可能吗?如果这是可能的,我怎么能这样做?
答案 0 :(得分:1)
正如您所发现的,这可以通过自定义属性来完成,并且假设浏览器兼容性不是问题(我不知道是否有任何浏览器,特别是Edge和Safari,在pseudo上有自定义属性的问题元素,但值得一试),自定义属性是使用JavaScript自定义伪元素样式的理想方式,作为CSSOM的解决方法,目前仅支持读取伪元素样式但不写入它们。
如果您担心浏览器兼容性,则必须采用传统方式,如here所述:
你可以随时找到其他方法,例如:
将样式应用于一个或多个任意类的伪元素,然后在类之间切换(请参阅seucolega's answer以获取快速示例) - 这是惯用的方式,因为它使用了简单的选择器(哪些伪元素不是)区分元素和元素状态,它们的使用方式
通过更改文档样式表来操作应用于所述伪元素的样式,这更像是一个黑客攻击
...通过对同一问题的其他答案给出的更多例子。