📞 [CSS] 滚动条设置transition不生效
问题描述
在编写自定义滚动条的时候,发现给::-webkit-scrollbar-thumb 设置transition (期望在鼠标悬浮在元素上的时候,显示滚动条)不生效。
原因
::-webkit-scrollbar-thumb 是浏览器的 伪元素(pseudo-element),属于 非标准 CSS 扩展,对它的样式支持是受限的。大多数浏览器不支持对其应用 transition 动画效果。
解决方案
lessCopy
.container {
@property --thumb-color {
syntax: '<color>';
inherits: true;
initial-value: transparent;
}
overflow: auto;
transition: --thumb-color 0.3s ease;
&:hover {
--thumb-color: rgba(22, 130, 230, 0.4);
}
&::-webkit-scrollbar {
width: 8px;
background-color: transparent;
}
&::-webkit-scrollbar-thumb {
background-color: var(--thumb-color);
border-radius: 4px;
}
}注意
该方法存在浏览器兼容性问题

