CSS隐藏某个模块的滚动条效果,实现横向滑动无滚动条

实现横向滚动效果但是不出现滚动条

如代码设置了一个模块的导航,以下是完整html和css代码

   <div class="nav">
        <ul>
            <li class="one"><a href="">每日推荐</a><img src="./images/路径 17750@2x.png" alt="" class="oneimg"></li>
            <li><a href="">新品速递</a></li>
            <li><a href="">精彩测评</a></li>
            <li><a href="">资讯</a></li>
            <li><a href="">全新</a></li>
        </ul>
    </div>
.nav {
  width: 94.6667vw;
  overflow-x: auto;
  margin: 0 auto;
}

.nav::-webkit-scrollbar {
  display: none;
}

.nav ul {
  height: 13.0667vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: max-content;
  flex-wrap: nowrap;
}

.nav ul li {
  margin-right: 10vw;
}

.nav ul li:last-child {
  margin-right: 0;
}

.nav ul a {
  color: #999999;
}

.nav ul .one {
  position: relative;
}

.nav ul .one a {
  color: #333333;
}

.nav ul .one .oneimg {
  position: absolute;
  top: 6vw;
  left: 6vw;
  width: 4vw;
  height: 0.8vw;
}

具体过程

首先我们给最外层盒子设置一个宽度用于版心居中,然后通过 overflow-x: auto; 实现横向滚动效果,接着我们给ul列表设置样式

.nav ul {
  height: 13.0667vw;
  /* 设置flex布局 */
  display: flex;
  justify-content: space-between;
  /* 实现内容在垂直方向居中 */
  align-items: center;
  /* 实现ul宽度由内容撑开 */
  width: max-content;
  /* 内容不换行显示 */
  flex-wrap: nowrap;
}

此时我们发现每个li的内容紧贴在一起,是因为没有给li单独设置外边距,设置外边距撑开ul达到效果,其他样式可自行设置

.nav ul li {
  margin-right: 10vw;
}

.nav ul li:last-child {
  margin-right: 0;
}

最后给整个大盒子nav设置样式隐藏滚动条

/* 设置浏览器中隐藏滚动条 */
.nav::-webkit-scrollbar {
  display: none;
}

整体效果

  • 13
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

趋之

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值