【问题标题】:Overflow-x scrollbars aren't visible on Chrome until I select and drag on content?在我选择并拖动内容之前,Chrome 上看不到溢出-x 滚动条?
【发布时间】:2021-09-28 17:18:40
【问题描述】:

我需要制作一个适用于不同屏幕尺寸的数据网格。一种常见的方法是使用overflow-x: auto 将网格元素包装在一个div 中。

https://codepen.io/adsfdsfhdsafkhdsafjkdhafskjds/pen/eYWEoya

<div class='page'>
  <h1>Heading</h1>
  
  <div class="grid">
    <div class="grid-inner">
      <div>Heading1</div>
      <div>Heading2</div>
      <div>Heading3</div>
      <div>Heading4</div>
      
      <div>Here is come content 1</div>
      <div>Here is come content 2</div>
      <div>Here is come content 3</div>
      <div>Here is come content 4</div>
    </div>
  </div>
</div>
.page {
  background: grey;
  margin: auto;
  max-width: 200px;
}
.grid {
  overflow-x: auto;
}
.grid-inner {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
.grid-inner div {
  padding: 20px;
}

从技术上讲,这是可行的,但我有一个 UX 问题。在 Chrome 上,滚动条最初是不可见的,因此用户可能不知道有他们看不到的可滚动内容:

在桌面 Chrome 上滚动的唯一方法是单击内容并向右拖动。此时滚动条出现,尽管内容也被突出显示,这并不理想:

当内容比它的overflow: auto 容器宽并因此可以滚动时,是否可以使滚动条永久可见?或者在这种情况下是否有一种完全不同的常见方法?

【问题讨论】:

  • 我们说的是移动设备上的 Chrome,对吧?因为在桌面上,滚动条总是可见的。在这种情况下,stackoverflow.com/questions/22907777/… 可能会起作用!
  • @ConstantinGroß 我不谈论桌面 Chrome。第一个屏幕截图(没有滚动条)是在我运行桌面 Chrome v91 的 MacBook 上拍摄的。
  • 哦,好的,那么这取决于操作系统,很有趣!显然,我链接的解决方案也不适用于 iOS 设备... =/

标签: css google-chrome responsive-design user-experience


【解决方案1】:

这是您的一个选择: https://codepen.io/panchroma/pen/wvdrzMe

它应该在 OS X Chrome 和 Safari 上运行良好,并且很容易按照您想要的方式设置滑块的样式。

::-webkit-scrollbar {
        width: 8px;
        background-color:#aaa;
    }

 ::-webkit-scrollbar-thumb {
        border-radius: 4px;
        background-color: #000;
        -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, .5);
    }

【讨论】:

  • 看起来不错。 -webkit-appearance: none 在这种情况下的目的是什么?
  • 感谢@Evanss 指出这一点,本示例中没有理由包含 -webkit-appearance: none。
  • 遗憾的是,这在 iOS 移动 Chrome 或 Safari 上不起作用
  • 感谢您的评论@Evanss,我也一样。根据developer.apple.com/forums/thread/670065,从 iOS 14 开始,iOS 不再支持自定义滚动条
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-16
  • 1970-01-01
  • 2020-06-25
  • 1970-01-01
  • 2012-09-29
  • 2019-04-14
  • 1970-01-01
相关资源
最近更新 更多