CSS位置粘性,重叠而不是推动

une*_*asy 4 html css sticky

我很难理解为什么粘性 div 不推送其他粘性 div。我很确定我已经看到它是这样工作的,但我无法弄清楚。

我希望标头 1 推动标头 2,而不是重叠在其上。超文本标记语言

<div class="header">
  <h1>Header 1</h1>
</div>

<div class="item">
  <h1>Item1</h1>
</div>

<div class="item">
  <h1>Item2</h1>
</div>

<div class="header">
  <h1>Header 2</h1>
</div>

<div class="item">
  <h1>Item1</h1>
</div>

<div class="item">
  <h1>Item2</h1>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

h1 {
  text-align: center;
  color: #000;
  font: bold 20vw Helvetica, Arial, sans-serif;
}

.header {
  position: sticky;
  top: 0px;
  height: 100%;
  width: 100%;
  background: white;
}
.item {
  height: 100vh;
  width: 100%;
  background: #00f;
}
Run Code Online (Sandbox Code Playgroud)

这是一个例子以及我正在尝试做的事情。 https://jsfiddle.net/7zfq491o/

Tem*_*fif 7

您需要不同的包装:

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

h1 {
  text-align: center;
  color: #000;
  font: bold 20vw Helvetica, Arial, sans-serif;
}

.header {
  position: sticky;
  top: 0px;
  background: white;
}

.item {
  height: 100vh;
  background: #00f;
}
Run Code Online (Sandbox Code Playgroud)
<section>
  <div class="header">
    <h1>Header 1</h1>
  </div>

  <div class="item">
    <h1>Item1</h1>
  </div>

  <div class="item">
    <h1>Item2</h1>
  </div>
</section>
<section>
  <div class="header">
    <h1>Header 2</h1>
  </div>

  <div class="item">
    <h1>Item1</h1>
  </div>

  <div class="item">
    <h1>Item2</h1>
  </div>
</section>
Run Code Online (Sandbox Code Playgroud)