為什麼overflow:hidden會阻止position:sticky工作?
在CSS中,position:sticky屬性允許元素保持可見滾動時,直到其容器元素捲動到視圖之外的位置。此行為模仿行動應用程式中常見的固定標頭。
但是,當容器元素設定了溢出:隱藏屬性時,將不再觀察到位置:黏性行為。發生這種情況是因為溢出:隱藏屬性限制了容器的大小,防止黏性元素被重新定位到其可見區域之外。
為什麼會發生這種情況
溢出時:隱藏應用於容器,它本質上會剪輯超出其邊界的任何內容。這意味著即使黏性元素位於其容器的可見區域之外,它也會被溢出:隱藏規則有效地隱藏。
現代替代方案:
到在內容溢出的容器中實現所需的粘性行為,同時保持修剪多餘內容的能力,請考慮使用contains:paint property:
contain: paint;
contain:繪製限制容器內子元素的渲染,包括溢出的內容。這有效地模仿了溢出:隱藏,同時仍然允許位置:黏性屬性的正確功能。
以上是為什麼`overflow:hidden`會破壞`position:sticky`?的詳細內容。更多資訊請關注PHP中文網其他相關文章!