我想用CSS自定义一个滚动条。
我使用这个WebKit CSS代码,它适用于Safari和Chrome:
::-webkit-scrollbar {
width: 15px;
height: 15px;
}
::-webkit-scrollbar-track-piece {
background-color: #c2d2e4;
}
::-webkit-scrollbar-thumb:vertical {
height: 30px;
background-color: #0a4c95;
}
我如何在Firefox中做同样的事情?
我知道我可以很容易地用jQuery来做,但我更喜欢用纯CSS来做,如果它是可行的。
2022年
使用最新的Firefox和Chrome版本进行测试
下面的代码片段将在Chrome和Firefox上显示相同的滚动条样式,请尝试一下。
html {
/*对于Firefox */
overflow-y:滚动;
滚动条-color: #008de4 #0d3b97;
scrollbar-width:薄;
}
/*用于Chrome和除Firefox之外的其他浏览器*/
身体:-webkit-scrollbar {
宽度:0.5 em;
background - color: # 0 d3b97;
}
身体:-webkit-scrollbar-thumb {
background - color: # 008 de4;
}
< html >
<body style="height: 600px"></body> .
< / html >
还可以使用以下方法自定义滚动条跟踪(但不适用于Firefox)
::-webkit-scrollbar-track
它在用户风格中起作用,但在网页中似乎不起作用。我还没有从Mozilla那里找到这方面的官方指示。虽然它可能在某些时候起作用,但Firefox并没有对此提供官方支持。此错误仍然打开https://bugzilla.mozilla.org/show_bug.cgi?id=77790
scrollbar {
/* clear useragent default style*/
-moz-appearance: none !important;
}
/* buttons at two ends */
scrollbarbutton {
-moz-appearance: none !important;
}
/* the sliding part*/
thumb{
-moz-appearance: none !important;
}
scrollcorner {
-moz-appearance: none !important;
resize:both;
}
/* vertical or horizontal */
scrollbar[orient="vertical"] {
color:silver;
}
详情请查看http://codemug.com/html/custom-scrollbars-using-css/。