【问题标题】:How to hide vertical scrollbar without hiding horizontal scrollbar and still be able to scroll?如何隐藏垂直滚动条而不隐藏水平滚动条并且仍然能够滚动?
【发布时间】:2021-08-02 19:36:08
【问题描述】:

我有一个需要水平垂直滚动的网格。

我只想隐藏(不是禁用滚动功能)垂直滚动条。

经过测试的解决方案 1

/* Hide scrollbar for Chrome, Safari and Opera */
.k-grid-content::-webkit-scrollbar {
    display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.k-grid-content {
    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none; /* Firefox */
}

此解决方案隐藏所有滚动条

经过测试的解决方案 2

overflow-y: hidden

此解决方案可防止滚动

我怎样才能只隐藏垂直滚动条而不失去滚动能力? 有可能吗?

【问题讨论】:

  • 嘿!你见过这个吗:stackoverflow.com/questions/16670931/…
  • @KurtLagerbier 它还隐藏了 x 条
  • 你好。很遗憾,您提供的链接没有回答我的问题。
  • 你不能从我发布的链接中获取代码并添加:overflow-x:scroll 然后还添加 padding-bottom 以隐藏子元素中的 x-bar 吗? (PS:我的意思是从上面的答案)。

标签: css


【解决方案1】:

自定义滚动条是一个跨浏览器兼容性问题,因为Firefox 限制了您很多

对于WebKit browsers,您可以在滚动条上设置widthheight

::-webkit-scrollbar
{
  width: 0;
  height: 8px;
}

这会隐藏垂直滚动条,但保持水平滚动条。它还删除默认滚动条样式,因此需要更正。

::-webkit-scrollbar
{
  width: 0;
  height: 1.2rem;
}

::-webkit-scrollbar-track
{
  background: white;
}

::-webkit-scrollbar-thumb
{
  background: hsl(0, 0%, 60%);
}

body
{
  width: 1500px;
  height: 1000px;
  background: url('https://random.imagecdn.app/1920/1080');
}

Interactive Code

【讨论】:

    【解决方案2】:

    这是可能的。由于我们没有您的 HTML,这里有一些示例 HTML 以作为示例:

    <div>
      <p>scroll down!</p>
      <p>content</p>
      <p>content</p>
      <p>content</p>
      <p>content</p>
      <p>scroll up!</p>
    </div>
    

    这是可以让您在没有滚动条的情况下也可以完成垂直滚动的 CSS(虽然我不知道这对可访问性的效果如何):

    /* hide scrollbar but allow scrolling */
    div {
      -ms-overflow-style: none; /* for Internet Explorer, Edge */
      scrollbar-width: none; /* for Firefox */
      overflow-y: scroll; 
    }
    
    div::-webkit-scrollbar {
      display: none; /* for Chrome, Safari, and Opera */
    }
    
    /* other styling */
    div {
      border: solid 5px black;
      border-radius: 5px;
      height: 300px;
      padding: 10px;
      width: 200px;
    }
    
    * {
      background-color: #EAF0F6;
      color: #2D3E50;
      font-family: 'Avenir';
      font-size: 26px;
      font-weight: bold;
    }
    

    【讨论】:

    • 感谢分享。不幸的是,您提供的示例没有回答我的问题。我希望能够水平和垂直滚动,同时只隐藏垂直滚动条。
    猜你喜欢
    • 2022-01-01
    • 2020-07-27
    • 2011-02-05
    • 1970-01-01
    • 2013-10-26
    • 2018-08-17
    • 2013-04-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多