使用 JavaScript 动态自定义 CSS 伪元素
许多开发人员遇到使用 JavaScript 动态更改 CSS 伪元素样式的挑战。本问题探讨了通过 JavaScript 脚本修改滚动条等元素的外观和行为的可能性。
更改滚动条颜色和可见性
该问题演示了两个尝试的脚本修改滚动条的颜色和可见性:
document.querySelector("#editor::-webkit-scrollbar-thumb:vertical").style.background = localStorage.getItem("Color"); document.querySelector("#editor::-webkit-scrollbar").style.visibility = "hidden";
但是,这些脚本遇到了问题跨浏览器兼容性并由于所选元素的空值而返回错误。
使用 CSS 变量实现跨浏览器
虽然浏览器兼容性可能是一个问题,答案提出了使用 CSS 变量(CSS Vars)的解决方案。 CSS Vars 允许通过 JavaScript 动态修改 CSS 属性。
通过为滚动条背景定义 CSS 变量并在伪元素规则中使用它,我们可以使用以下命令更改滚动条颜色JavaScript:
CSS:
#editor { --scrollbar-background: #ccc; } #editor::-webkit-scrollbar-thumb:vertical { /* Fallback */ background-color: #ccc; /* Dynamic value */ background-color: var(--scrollbar-background); }
JavaScript:
document.getElementById("#editor").style.setProperty('--scrollbar-background', localStorage.getItem("Color"));
此方法可以动态修改滚动条颜色不受浏览器限制的影响。
以上是JavaScript 如何动态自定义滚动条等 CSS 伪元素?的详细内容。更多信息请关注PHP中文网其他相关文章!