首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Safari位置的解决方法: sticky (-webkit-sticky)错误

Safari位置的解决方法: sticky (-webkit-sticky)错误
EN

Stack Overflow用户
提问于 2019-09-14 18:55:12
回答 1查看 4.3K关注 0票数 6

如果你在Safari中打开这个https://jsfiddle.net/17uwnsq6/4/ (12.1.2,但应该适用于所有最近的版本),并开始向下滚动白色的可滚动区域,最初粘性的"Header“元素将保持粘性,但稍后将滚动出屏幕。在Chrome和Firefox中,它总是像预期的那样粘滞。

供参考的HTML和CSS:

代码语言:javascript
复制
<div class="title">Title</div>
<div class="container">
  <div class="header">Header</div>
  <div class="content">Content</div>
</div>
代码语言:javascript
复制
html {
  height: 100%;
}

body {
  display: flex;
  flex-direction: column;
  height: 100%;
  margin: 0;
  padding: 0;
}

.container {
  flex: 1 1 0;
  overflow: auto;
}

.header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.content {
  height: 2500px;
}

.title {
  flex: 0 0 auto;
  background-color: lightblue;
}

在使用flex布局调整容器大小时,似乎会出现这个bug。有没有人知道解决这个问题的办法?这样做的目的是使标题总是粘性的,同时调整容器的大小,使其占据“标题”留下的视口部分。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-15 02:38:53

我想我已经弄明白了。诀窍是将可滚动容器的整个子容器(即头部和内容)放入包装器div中-这样就不会触发bug。

票数 23
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57934803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档