css滚动条(css不显示滚动条但可以滚动)
css滚动条(css不显示滚动条但可以滚动)CSS滚动条样式教程–如何制作自定义滚动条
2021-05-05 10:06:22·徐大兄弟您是否曾经访问过带有自定义滚动条的网站,并想知道他们是如何做到的?
在本教程中,您将:
了解可用于在浏览器中设置滚动条样式的本机CSS属性
使用CSS创建四个唯一的滚动条
了解一些外部库,这些库为自定义滚动条提供了跨浏览器的支持
自定义滚动条的优缺点
在进入代码之前,我认为值得为网站或应用程序创建自定义滚动条带来一些潜在的折衷。
好处是,与使用浏览器默认滚动条的数百万个网站相比,它可以使您的网站脱颖而出。任何能让您的网站更容易被访问者铭记的内容都将使您长期受益。
另一方面,许多UI设计人员认为,您永远不应干扰滚动条之类的"标准化" UI组件。如果您过多地修改滚动条,可能会使使用您的网站或应用程序的人感到困惑。
如果您是为自己的个人网站执行此操作,则只要您喜欢它的外观,就可能不必担心它。
另一方面,如果您想在工作中或想要赚钱的项目中实现自定义滚动条,则应尝试A / B测试并根据结果做出以数据为依据的决策。
在一天结束时,我们大多数人都在编写代码来增加业务收入,因此您始终需要牢记这一点。
入门
您需要做的第一件事是创建一个基本布局,以便页面足够大以实际在Web浏览器中显示滚动条:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content="width=device-width,initial-scale=1.0"><linkrel='stylesheet'href="styles.css"><title>Document</title></head><body><divclass="container"><h1>CSSScrollbarCustomization</h1><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p><pclass="para">"Loremipsumdolorsitamet,consecteturadipiscingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum."</p></div></body></html>
这里没什么好想的,只是一个基本的div容器和一个用于我们的布局的类名容器,一个标题的标题以及一堆带有类名para的段落来填充我们的页面。
这是使事情看起来更奇特的CSS:body{font-family:Arial,Helvetica,sans-serif;margin:0; }.para{font-size:16px;padding:20px;width:70%; }.container{display:flex;flex-direction:column;justify-content:center;align-items:center; }
如何使用CSS创建自定义滚动条
通过我们的设置,我们可以跳到教程的有趣部分。本部分的第一部分将学习可用于样式设置的各种CSS属性。
在第二部分中,我们将实现四种不同类型的滚动条,为您提供一些有关制作自己的滚动条的想法。
CSS属性可用于设置滚动条的样式
不幸的是,对于CSS样式的滚动条,我们仍然没有任何标准化的跨浏览器支持。 Firefox和基于Webkit的浏览器(例如Chrome,Edge和Safari)具有不同的样式属性。
本教程将主要针对Webkit浏览器,因为它们提供了更多样式设置选项,但我们还将简要介绍Firefox。
滚动条的Webkit CSS样式属性
::-webkit-scrollbar –整个滚动条
::-webkit-scrollbar-track –滚动条的整个进度条区域
::-webkit-scrollbar-thumb –滚动条的可拖动部分
以下属性可用,但较不常用:
::-webkit-scrollbar-button –滚动条两端的向上/向下按钮
::-webkit-scrollbar-track-piece –滚动条未被拇指覆盖的部分
::-webkit-scrollbar-corner –水平和垂直滚动条相交的底角
滚动条的Firefox CSS样式属性
当前有两个可用的CSS属性可用于在Firefox中设置滚动条的样式
scrollbar-width –控制滚动条的宽度,只有两个选项是auto或thin
scrollbar-color –接受两种颜色,该颜色用于按顺序为拇指和滚动条上色
既然您知道了用于自定义滚动条的选项,那么我们将通过一些示例将其付诸实践。
黑暗主题滚动条
黑暗主题网站现在风行一时。坚持使用默认的浏览器滚动条可能会惹恼用户,因为它与深色主题网站不太适合。
让我们用我们对CSS的新知识来创建一个深色主题的滚动条,该滚动条的边框受CSS Tricks网站的启发:html::-webkit-scrollbar{width:20px; }html::-webkit-scrollbar-track{background-color:black; }html::-webkit-scrollbar-thumb{background:#4e4e4e;border-radius:25px; }
极简滚动条
对于此示例,您将制作一个简约的滚动条。 如果您要为网站提供简单,优雅的样式,则这种类型的滚动条会很好用。
需要注意的最重要的事情是,您可以使用CSS中的悬停和活动伪元素来进一步设置滚动条的样式。 在这种情况下,当您将鼠标悬停并在拇指上拖动时,滚动条将变为更深的灰色。html::-webkit-scrollbar{width:10px; }html::-webkit-scrollbar-track{background:rgb(179,177,177);border-radius:10px;}html::-webkit-scrollbar-thumb{background:rgb(136,136,136);border-radius:10px; }html::-webkit-scrollbar-thumb:hover{background:rgb(100,100,100);border-radius:10px; }html::-webkit-scrollbar-thumb:active{background:rgb(68,68,68);border-radius:10px; }
图案滚动条
在本节中,重点是使用重复的线性渐变在滚动条轨道上创建图案效果。 滚动条的拇指也可以做同样的事情。
还要注意的另一件事是,您可以使用边框设置滚动条拇指的样式,可以使用它创建许多很酷的效果。 在这种情况下,我将拇指的背景色设为透明,以便您在滚动时可以看到滚动条的轨迹样式。
html::-webkit-scrollbar{width:20px; }html::-webkit-scrollbar-track{background-image:repeating-linear-gradient(45deg,red0,red1px,transparent0,transparent50%);background-size:10px10px; }html::-webkit-scrollbar-thumb{background:transparent;border-radius:5px;border:2pxsolidblack;box-shadow:inset1px1px5pxblack; }
"动画"渐变滚动条
本示例使用线性渐变和带有框阴影的技巧来使它看起来像滚动条在您上下移动页面时正在改变颜色。 真正发生的是滚动条轨道的背景正显示在拇指下方。
之所以起作用,是因为阴影框占据了滚动条的所有空间(拇指所在的位置除外)。 由于拇指是透明的,因此背景的渐变颜色会显示出来。html::-webkit-scrollbar{width:20px; }html::-webkit-scrollbar-track{background:linear-gradient(0deg,rgba(255,0,0,1)0%,rgba(7,0,211,1)100%); }html::-webkit-scrollbar-thumb{background:transparent;box-shadow:0px0px0px100vhblack; }
自定义滚动条的局限性和替代方法
创建自定义滚动条显然存在一些问题。 首先是缺乏跨浏览器支持。 其他问题可能是缺乏向滚动条添加过渡或动画的功能,以及自定义滚动条不会出现在移动设备上的事实。
另一种方法是隐藏默认滚动条并使用库,但这在用作页面的主滚动条时可能会影响性能。 还有其他潜在的可用性问题,因为这些库依赖JavaScript来模仿本机滚动条行为。
巴里岛旅游(全球最美10个旅游胜地)巴里岛旅游(全球最美10个旅游胜地)原创臭皮匠旅行记20210228153758都说巴厘岛是拍摄婚纱照和度蜜月的旅游胜地,去年与朋友一同前往巴厘岛游玩,在热情好客的当地人带领下,感
经典钢琴曲(100首世界经典钢琴曲,你掌握了几首?)经典钢琴曲(100首世界经典钢琴曲,你掌握了几首?)钢琴被称为乐器之王,钢琴曲古今中外源远流长,引人入胜。到现今为止,世界上流传着不少经典的钢琴曲,为世人所传颂。在那么多优秀的钢琴
世界著名钢琴曲欣赏(史上超好听的30首钢琴曲推荐)世界著名钢琴曲欣赏(史上超好听的30首钢琴曲推荐)1。VariationsontheKanonbyPachelGeorgeWinston。推荐指数。改编自帕卡贝尔的D大调卡农,节奏
世界钢琴名曲(10首世界钢琴名曲)世界钢琴名曲(10首世界钢琴名曲)经典永流传,喜爱的藏心底。娇阳暖暖日,风和美景时仰望云卷云舒,听几曲清新音乐,品几口浓香醇酒人生复何求。1TheSoundsOfSilence2天
钢琴曲试听(钢琴曲欣赏10大名曲下载)钢琴曲试听(钢琴曲欣赏10大名曲下载)原创天籁妙音坊20210524193000SongfortheSoul灵魂之歌。m4a404来自天籁妙音坊Thedaydream白日梦Song
深圳大梅沙门票(深圳大梅沙一日游攻略)深圳大梅沙门票(深圳大梅沙一日游攻略)原创深圳本地宝20201002112600要说深圳知名的海滩相信大部分人都会想起大梅沙因为18年的台风山竹大梅沙整体重建现在公园重建一期项目基
佛罗伦诗(佛罗伦斯小镇)佛罗伦诗(佛罗伦斯小镇)瞭望智库20200304204349那一年,能够影响世界的,是什么呢?是一幅画,和一场战争。文华伟552本文转载自微信公众号历史的荷尔蒙(IDermeng2
网络歌手排行榜(曾风靡一时的十位知名网络歌手)网络歌手排行榜(曾风靡一时的十位知名网络歌手)娱乐圈是个浮躁的圈子,也是容易被人遗忘的一个圈子。混迹在娱乐圈,每年持续拿出有份量的作品,才会被观众记住。如果一味地玩低调,又拿不出有
抚顺生命之环(抚顺周边游景点大全自驾车旅游)抚顺生命之环(抚顺周边游景点大全自驾车旅游)在全国经济都处于高速发展的大背景之下,国内城市与城市之间的差距越来越小,如何能够增加自己城市的竞争力,成为了城市发展的重点,人们将竞争的
云南晋宁(昆明晋宁旅游景点大全)云南晋宁(昆明晋宁旅游景点大全)昆明猩房楼市20210519170925百年大计,教育为本。5月首周,昆明有51个建筑房地产项目获批,晋宁区有19个,涉及学校的有4个项目。未来5年
泰国游攻略(泰国旅游团报价)泰国游攻略(泰国旅游团报价)游宣传网站AmazingThailand公布了25个UNSEEN新系列的名单,这是2021年这个新系列中泰国最不为人知的景点,这25个地方都是精心挑选的