跳至內容
Astera Technology

Sticky 只在自己的捲動範圍內生效

在 120px 局部捲動框,查看 scrollTop0、80 時標題位置。

在本地區域捲動,所測範圍內標題仍留在區域頂部。

下載完整個案資料及參考答案 ↓

先看這個例子

捲動框高 120px、overflow:auto。標題設 sticky、top0,後面內容提供 300px 局部可捲範圍。

輸入與瀏覽器原生結果
情況輸入或查看方法結果與意思
開始scrollTop0標題在捲動框頂部
區內捲動scrollTop80標題仍在捲動框頂部
外層文件查整頁捲動位置區內捲動毋須帶動整頁
下載可編輯 CSV ↓

瀏覽器怎樣處理

Sticky 按最近的相關捲動區計算,並受包含區塊限制;它不等同固定在視窗。標題實際較高也會影響空間,所以本例用最小高度,容許文字增高。

一般標題會隨內容捲走

反例保留捲動框,移除 sticky。

反例原始碼,請另開例子核對
<style>body{margin:8px}</style>
<style>.scroller{height:120px;overflow:auto}.heading{margin:0;background:white}.content{height:300px}</style><section class="scroller"><h2 class="heading">工作坊記錄</h2><section class="content"><p>更多本地資料在此延續。</p></section></section>

scrollTop80 時,一般標題較原位向上移 80px,不會留在區頂。

試着修正

本例是否證明標題離開所屬範圍後仍永遠固定?

查看參考答案

不是。包含區塊邊界會限制 sticky;須按真正區域和完整範圍測試。

  • 捲動前後,量標題相對捲動框頂部的位置。
  • 保留區內焦點和捲動路徑。

原始例子檔案

相關資源