【问题标题】:CSS Sticky header goes away after scrolling the div height滚动 div 高度后 CSS Sticky 标题消失
【发布时间】:2018-07-09 12:03:26
【问题描述】:

编辑:问题已修复。不幸的是,我在此处发布的代码中没有任何内容,因此发布答案并没有多大用处。这是一个框架问题。

正如标题所暗示的那样,通过在我的 CSS 中使用 position: sticky;,我有一个带有粘性 <thead> 的 div(带有一个表格)。但是在滚动 div 高度后,标题只会随着内容向上滚动。

html代码是这样的

<div class="tablewrapper">
    <table>
        <thead>content with tr and th's</thead>
        <tbody>more content with tr and td's</tbody>
    </table>
</div>

我的 CSS 代码是这样的:

.tablewrapper {
    overflow: auto;
}

.tablewrapper table {
    /* This is empty */
}

.tablewrapper thead {
    display: block;
    position: sticky;
    overflow: visible
}

.tablewrapper tbody {
    overflow: visible;
    display: block;
}

滚动条来自.tablewrapper

如何让thead 保持粘性?

另外,澄清一下,代码比这里先进得多,所以不幸的是我不得不在tablewrapper 上使用滚动条。

最好使用纯 CSS 修复

【问题讨论】:

  • 你用哪个浏览器测试它?似乎只有 Firefox 支持粘性表格元素:developer.mozilla.org/en-US/docs/Web/CSS/…
  • 在 Chrome 中。根据 w3schools Chrome 确实支持 position sticky 属性。它确实适用于我滚动的前 500 像素。
  • 我猜你需要使用position: fixed,因为 Chrome 不支持粘性表格的位置...

标签: css scroll sticky


【解决方案1】:

添加Top: 0;,当thead标签到达顶部时会粘住

.tablewrapper thead {
  display: block;
  position: sticky;
  Top:0;
  overflow: visible
}

【讨论】:

    猜你喜欢
    • 2011-02-13
    • 1970-01-01
    • 2011-08-16
    • 2017-05-09
    • 1970-01-01
    • 2012-11-21
    • 1970-01-01
    • 2013-11-14
    • 2016-08-06
    相关资源
    最近更新 更多