一直以為position只有四個值
position: static;
position: relative;
position: absolute;
position: fixed;
其實還有一個非常有趣的值喲,那就是 position: sticky;
這是一個結合了 position:relative 和 position:fixed 兩種定位功能於一體的特殊定位,適用於一些特殊場景。
什麼是結合兩種定位功能於一體呢?
元素先按照普通文件流定位,然後相對於該元素在流中的 flow root(BFC)和 containing block(最近的塊級祖先元素)定位。
而後,元素定位表現為在跨越特定閾值前為相對定位,之後為固定定位。 這個特定閾值指的是 top, right, bottom 或 left 之一,換言之,指定 top, right, bottom 或 left 四個閾值其中之一,才可使粘性定位生效。否則其行為與相對定位相同。
此處有一個灰常簡單的小demo供參考,sticky的相容性不太好,最好用谷歌開啟喲:codepen.io/woshilyy/pen/NMLLYv
使用sticky可以實現頭部導航固定,只需簡單的幾行css搞定,還是非常方便的啊