position的含义是指定位类型,类型可以是:static、relative、absolute、fixed、inherit和sticky,这里sticky是h5C3新发布的一个属性
- position: static
static(没有定位)是position的默认值,有时候给元素设置固定定位,可以使用position:static去掉
- position: relative
relative(相对定位),不影响元素本身特性,不会使元素脱离文档流,相对于自身原本位置进行偏移
- position: absolute
absolute(绝对定位),使元素完全脱离文档流
相对于最近一个有定位的父元素偏移(若其父元素没有定位则逐层上找,直到document——页面文档对象)
相对定位一般配合绝对定位使用(将父元素设置相对定位,使其相对于父元素偏移)
- position: fixed
fixed生成固定定位的元素,相对于body进行定位
- position: inherit
继承父元素的position属性,没有什么用
- position: sticky (黏性定位,吸顶效果)
<style>
.top,
.foot {
width: 100%;
height: 200px;
background: red;
border: 1px solid black;
}
.sticky {
width: 100%;
height: 100px;
position: sticky;
top: 0;
background-color: green;
}
</style>
<div class="top"></div>
<div class="top"></div>
<div class="top"></div>
<div class="sticky"></div>
<div class="foot"></div>
<div class="foot"></div>
<div class="foot"></div>
<div class="foot"></div>
<div class="foot"></div>