css中position属性值的区别
1、relative
元素相对自身的原位置偏移某个距离,可能会覆盖其他元素;占据空间,原本的空间依旧保留,表现为空白
2、absolute
原来的元素空间被删除,新生成一个块级框,与页面内容相对静止,如果页面向下滑动,该块级框会跟随向上运动
不占空间,相对于最近的已定位的祖先元素,有已定位(指position不是static的元素)祖先元素, 以最近的祖先元素为参考标准。如果无已定位祖先元素, 以body元素为偏移参照基准。
所以,父元素一般设置为相对定位
3、fixed
原来的元素空间被删除,新生成一个块级框,固定在页面的一个位置,即使向下滑动页面,该块级框依旧位置不改变
不占空间,相对于视窗来定位,这意味着即便页面滚动,它还是会停留在相同的位置。一个固定定位元素不会保留它原本在页面应有的空隙。
4、sticky
1)、static表示没有定位,或者说不算具有定位属性。
2)、如果元素 position 属性值为 static(或者未设 position 属性),该元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。设置 top,right,bottom,left 这些偏移属性不会影响静态定位的正常显示(设置这些属性没有用)。
跟随页面一起滚动,当超过阈值以后,固定在页面边缘,相当于 absolute和fixed的混合
例如:
#one { position: sticky; top: 10px; }
在 viewport 视口滚动到元素 top 距离小于 10px 之前,元素为相对定位。之后,元素将固定在与顶部距离 10px 的位置,直到 viewport 视口回滚到阈值以下。
以上就是css中position属性值的区别是什么?的详细内容,更多请关注易知道|edz.cc其它相关文章!