元素的默认定位方式,元素按照正常文档流排列。
left、top、right、bottom等属性对该元素无效,不会受到定位属性的影响。
通过设置元素的position属性为relative,元素在正常文档流中占据原先的空间,但可以通过left、top、right、bottom等属性相对于自身的初始位置进行偏移。
div {
position: relative;
left: 20px;
top: 10px;
}
通过设置元素的position属性为absolute,元素脱离正常文档流,相对于最近的已定位祖先元素进行定位,如果没有已定位的祖先元素,则相对于文档的初始坐标进行定位。同样可以使用top、right、bottom和left属性来调整元素的位置。
div {
position: absolute;
left: 20px;
top: 10px;
}
通过设置元素的position属性为fixed,元素脱离正常文档流,相对于浏览器窗口进行定位。无论页面滚动与否,元素的位置都不会改变。left、top、right、bottom等属性可以用来指定元素相对于窗口的偏移量。
div {
position: fixed;
left: 20px;
top: 10px;
}
通过设置元素的position属性为sticky,可以实现元素在特定的滚动区域内粘性定位。元素在滚动到指定位置前是相对定位,滚动到指定位置后则固定在指定位置,直到滚动区域滚动超过指定位置。