如何为 WebKit 浏览器设置滚动条滑块样式以及滚动条的组成部分是什么?
滚动条是网页浏览中必不可少的组成部分,允许用户浏览长页面的内容。基于 WebKit 的浏览器(例如 Safari 和 Google Chrome)提供了多种方法来设置滚动条滑块(即可在滚动条轨道上上下移动的可拖动句柄)的样式。
滚动条是任何显示内容超出其边界的窗口的重要功能。包含滚动条为用户提供了一种浏览客户端区域内容的方法。滚动条的方向决定了用户与其交互时滚动的方向。
顾名思义,水平滚动条允许用户水平滚动窗口的内容,允许他们将内容向左或向右移动。另一方面,垂直滚动条允许用户垂直滚动内容,允许他们向上或向下浏览内容。
在本文中,我们将学习如何为 WebKit 浏览器设置滚动条滑块样式,并探讨滚动条的不同组成部分。
滚动条的组成部分
滚动条由几个部分组成,包括轨道、滑块、箭头和按钮。滚动条由一个阴影轴组成,轴的两端(即顶部和底部)各有一个箭头按钮,箭头按钮之间是一个滚动框(有时称为滑块)。
滚动条表示用户窗口区域中数据对象的总长度或宽度,滚动框表示客户端区域中可见的对象部分。
请注意,当用户滚动数据对象以显示其不同部分时,滚动框的位置会发生变化。另一方面,按钮用于跳转到上一页或下一页,或跳转到内容的开头或结尾。
设置滚动条滑块样式的方法
有多种方法可以在 CSS 中设置滚动条滑块的样式。让我们讨论一些常见的样式方法。
方法 1:使用 WebKit 供应商前缀
在这种方法中,我们使用 WebKit 供应商前缀,请注意,这仅与基于 WebKit 的浏览器(如 Google Chrome、Edge 等)兼容,需要将以下 CSS 代码添加到样式表中。以下是语法。
语法
::-webkit-scrollbar-thumb { background-color: green; /* other CSS styles for scrollbar thumb */ }
示例
<html> <head> <title>Example to style the scrollbar thumb using Webkit Vendor Prefixes</title> <style> ::-webkit-scrollbar-thumb { background-color: green; border-radius: 12px; padding: 2px; margin: none; } </style> </head> <body> <h2>Example to style the scrollbar thumb using Webkit Vendor Prefixes</h2> <p> Tutorials Point was founded on the premise that there is a segment of readers who find online content more accessible and preferable when it comes to acquiring new skills at their own pace from the comfort of their homes. The journey began with the creation of a single tutorial on HTML in 2006. Encouraged by the positive response to the tutorial, we continued to expand our repository by adding new tutorials on a variety of subjects. Our current collection boasts a wealth of tutorials and articles on topics ranging from programming languages and web design to academics and much more. </p> </body> </html>
方法 2:使用 WebKit 滚动条伪元素
在这种方法中,我们使用 WebKit 滚动条伪元素,请注意,这仅与基于 WebKit 的浏览器(如 Google Chrome、Edge 等)兼容,需要将以下 CSS 代码添加到样式表中。以下是语法。
语法
::-webkit-scrollbar { width: 20px; /* other CSS styles for scrollbar thumb */ } ::-webkit-scrollbar-thumb { background-color: blue; border-radius: 5px; /* other CSS styles for scrollbar thumb */ }
示例
<html> <head> <title>Example to style the scrollbar thumb using Webkit Scrollbar Pseudo-elements</title> <style> ::-webkit-scrollbar { width: 15px; } ::-webkit-scrollbar-thumb { background-color: green; border-radius: 12px; } </style> </head> <body> <h2>Example to style the scrollbar thumb using Webkit Scrollbar Pseudo-elements</h2> <p> Tutorials Point was founded on the premise that there is a segment of readers who find online content more accessible and preferable when it comes to acquiring new skills at their own pace from the comfort of their homes. The journey began with the creation of a single tutorial on HTML in 2006. Encouraged by the positive response to the tutorial, we continued to expand our repository by adding new tutorials on a variety of subjects. Our current collection boasts a wealth of tutorials and articles on topics ranging from programming languages and web design to academics and much more. </p> </body> </html>
方法 3:使用 JavaScript 设置自定义滚动条样式
在这种方法中,我们使用 JavaScript 设计和使用自定义滚动条。请注意,此方法与所有浏览器兼容。请参见以下语法,了解如何在网页中使用 JavaScript 代码。
语法
<style> .scrollbar { overflow: auto; height: 250px; width: 350px; background-color: blue; padding: 5px; } .thumb { background-color: green; height: 15px; width: 100%; position: absolute; top: 0; left: 0; } </style> var scrollbar = document.querySelector('.scroll-thumb'); scroll-thumb.addEventListener('scroll', function() { var mythumb = scrollbar.querySelector('.mythumb'); var mypercent = scrollbar.scrollTop / (scrollbar.scrollHeight - scrollbar.clientHeight); var mythumbHeight = Math.floor(scrollbar.clientHeight * percent); mythumb.style.height = mythumbHeight + 'px'; });
示例
<html> <head> <title>Example to style the scrollbar thumb using JavaScript</title> <style> .myscrollbar { overflow: auto; height: 200px; width: 300px; background-color: #eee; padding: 10px; } .mythumb { height: 20px; width: 100%; position: absolute; top: 0; left: 0; } </style> </head> <body> <h2>Example to style the scrollbar thumb using JavaScript</h1> <div class="myscrollbar"> <div class="mythumb"></div> <p> Tutorials Point was founded on the premise that there is a segment of readers who find online content more accessible and preferable when it comes to acquiring new skills at their own pace from the comfort of their homes. The journey began with the creation of a single tutorial on HTML in 2006. Encouraged by the positive response to the tutorial, we continued to expand our repository by adding new tutorials on a variety of subjects. Our current collection boasts a wealth of tutorials and articles on topics ranging from programming languages and web design to academics and much more. </p> </div> <script> var myscrollbar = document.querySelector('.myscrollbar'); var mythumb = scrollbar.querySelector('.mythumb'); myscrollbar.addEventListener('scroll', function() { var mythumbPosition = myscrollbar.scrollTop / (myscrollbar.scrollHeight - myscrollbar.clientHeight) * (myscrollbar.clientHeight - mythumb.clientHeight); mythumb.style.top = mythumbPosition + 'px'; }); </script> </body> </html>
结论
在本文中,我们学习了如何为 WebKit 浏览器设置滚动条滑块样式,并了解了滚动条的不同组成部分。我们学习了为 WebKit 浏览器设置滚动条滑块样式的不同方法。第一种方法使用 WebKit 供应商前缀直接设置滚动条滑块样式。第二种方法使用 WebKit 滚动条伪元素来设置滑块和其他滚动条组件的样式。第三种方法涉及使用 JavaScript 创建自定义滚动条并手动更新滑块的位置。每种方法都有其优点和缺点,方法的选择将取决于项目的具体要求。