面對「onepage scroll」類全頁滾動插件,螢幕高度變化導致內容截斷或間距異常,**固定像素 (px) 是禍根**。百分比基於父容器高度計算,能隨視口縮放自適應,是響應式佈局的基礎選擇。
| 單位 | 參考基準 | 適用場景 | 缺點 |
|---|---|---|---|
% | 父元素高度 | 流式佈局、彈性容器內間距 | 父元素無高度時失效 |
vh/vw | 視口高度/寬度 | 全屏區塊、Hero 區域、強制全屏佈局 | 移動端地址欄隱藏導致跳動 |
rem | 根元素字體大小 | 全局縮放體系、組件庫設計 | 需配合根字體計算 |
px | 絕對像素 | 邊框、圖標、極小固定間距 | 無響應能力、高 DPI 模糊 |
min-height: 100vh:確保每頁至少佔滿視口高度,內容超出時自然撐開,避免截斷。gap、justify-content 實現彈性間距分配。@media (max-height: 600px) {
.section { padding-top: 5vh; padding-bottom: 5vh; }
}
responsiveFallback 或 afterMove 回調,利用它們動態重算高度。margin-top/bottom 參考的是**父元素寬度**(非高度),垂直間距請用 padding 或 vh。max-width 並置中,配合 clamp() 限制間距範圍:padding: clamp(1rem, 5vh, 3rem)。rem 建立全局節奏,局部微調用 vh。拒絕像素硬編碼,擁抱相對單位與現代佈局,才能讓頁面在任何螢幕上優雅呼吸。