position
是 CSS 中用來控制元素佈局和定位的屬性,根據不同的方式來控制元素的位置
今天主要介紹以下五種值:static
relative
absolute
fixed
sticky
static
預設值,不會改變元素的定位方式position: static;
可透過以上這張圖得知,兩個方塊會依照瀏覽器預設的配置自動排版在頁面上,位置不變。
relative
(相對定位)元素相對於其正常位置進行移動,可使用top、right、bottom、left 來進行調整position: relative;
top: 20px;
left: 30px;
relative 表現的和 static 一樣,除非你增加了一些額外的屬性,像是top、right、bottom、left,
這樣就會根據你的調整做改變。
absolute
(絕對定位)脫離文檔流,並相對其最近的有定位的父元素進行絕對定位position: absolute;
absolute很特別,因為他會根據父元素進行定位,而這張圖的父元素為外圍的黑色框線,所以裡面的方塊會依照父元素做位置的定位。
fixed
不隨頁面滾動而改變位置position: fixed;
無論滾軸如何移動,Fixed Box永遠都只會固定在最頂部。
sticky
元素在特定的滾動位置之前是相對定位的,達到該位置後變為固定定位position: sticky;
第一張圖為未滾動滾軸前,有兩行字在最頂部,但再看看第二張圖,滾軸移動到一定的位置,第二行字就會消失,
這也是sticky
特別的地方。