css如何隐藏垂直滚动条但同时需保持滚动

前言

在写前端页面时,对于超出的内容,我们希望隐藏,同时保持垂直的滚动,但是又不希望有丑陋的垂直滚动条,那该怎么去实现呢

实现方式有很多种,可以用iscroll插件,也可以用css去解决

01

97d3fd357143e392c950461b3ffbb4fe.png

方法1-计算滚动条宽度并隐藏起来

这种方法主要是通过计算滚动条宽度,给隐藏起来的,如下示例所示

具体片段代码如下所示

<template>
    <div class="wrap">
        <div class="outer-container">
            <div class="inner-container">
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
                itclanCoder,https://coder.itclan.cn,itclan.cn,书以启智,技于谋生,活出斜杠
            </div>
        </div>
    </div>
</template>

<script>
    export default {
        name:'curWidthScroll'
    }
</script>

<style lang="scss" scoped>
.wrap {
    text-align: center;
}

.outer-container{
  width: 360px;
  height: 200px;
  position: relative;
  overflow: hidden;
    margin: 10px auto;
}
.inner-container{
  position: absolute;
  left: 0;
  top: 0;
  right: -17px; // 通过移动滚动条,实现隐藏
  bottom: 0;
  overflow-x: hidden;
  overflow-y: scroll; // 垂直滚动
}
</style>

02

a11a30099b27553e2833bf59cc87de9b.png

方法2-使用三个容器包围起来,不需要计算滚动条的宽度

将内容限制在盒子里面了。这样子就看不到滚动条同时也可以滚动

<template>
    <div class="wrap">
        <div class="outer-container">
            <div class="inner-container">
                <div class="content">
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                   书以启智,技于谋生,活出斜杠,https://video.itclan.cn,tv.itclan.cn,https://nav.itclan.cn
                </div>
         </div>
 </div>
    </div>
</template>

<script>
    export default {
        name:"curWidthScroll2"
    }
</script>

<style lang="scss" scoped>
.content {
    padding: 10px;
}

.outer-container  {
    margin: 0 auto;
}
.content, .outer-container {
  width: 200px;
  height: 200px;
}

.outer-container {
  border: 1px solid #ddd;
  position: relative;
  overflow: hidden;
}

.inner-container {
  position: absolute;
  left: 0;
  overflow-x: hidden;
  overflow-y: scroll;
}

.inner-container::-webkit-scrollbar {
  display: none;
}
</style>

03

3d0ffe9ba6aad7ea42a3604516307257.png

方法3-使用webkit-scorllbar

通过CSS隐藏滚动条的方法,不过这个方法不兼容IE,做移动端的可以使用。那就是自定义滚动条的伪对象选择器::-webkit-scrollbar

.content::-webkit-scrollbar { width: 0 !important }
/*IE 10+*/
.content { -ms-overflow-style: none; }
/*Firefox*/
.content { overflow: -moz-scrollbars-none; }

总结

上面三种方法都是可以实现,垂直方向内容滚动,同时隐藏掉滚动条的,如果不考虑IE兼容性,那么就可以直接使用第三种方式最简单,当然也可以使用一些第三方库,插件去实现的,比如iscroll的,具体用哪个,看自己的项目的,适合自己的才是最好的

df3d4d9052cf40cca64696a244860f25.jpeg

JS如何使用隐藏控件为表单添加参数


8197a1acd0ef4dea150c6a058d135a25.jpeg

Js如何利用prototype为类创建静态成员属性和方法


964d5f6367ad848d7db3697f8362e9a4.jpeg

JS如何定义一个类分别用Es5和Es6来实现


64a7be689b696d1740672b5bfd155a22.jpeg

Js中闭包的概念和具体使用


d41ed638089d5c55a4b545004534be80.jpeg

VueJs中如何自定义hooks(组合式)函数


点击左下角查看更多

86e0c97698344d91924d6a035feae995.gif

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值