如何为Webkit浏览器样式化滚动条拇指,以及滚动条的组件是什么

如何为Webkit浏览器样式化滚动条拇指,以及滚动条的组件是什么

滚动条是Web浏览中的重要部分,允许用户浏览长页面内容。基于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 Scrollbar伪元素

在这种方法中,我们使用Webkit Scrollbar伪元素,并注意此方法只与基于Webkit的浏览器(如谷歌浏览器、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创建自定义滚动条,并手动更新滑块的位置。每种方法都有其优缺点,选择使用的方法将取决于项目的具体要求。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程

CSS 精选笔记