position用于设置元素定位
元素的属性值
属性值 | 描述 |
---|---|
static | 默认值,采用元素默认的定位方式 |
relative | 使元素对其原始位置进行“相对定位” |
absolute | 使元素根据父(祖先)父元素的定位情况进行“绝对定位” |
fixed | 使元素相对于浏览器窗口进行“固定定位” |
相对定位
相对定位是一个非常容易掌握的概念。如果对一个元素进行相对定位,它将出现在它所在的位置上。然后,可以通过设置垂直或水平位置,让这个元素“相对于”它的起点进行移动。
如果将 top 设置为 20px,那么框将在原位置顶部下面 20 像素的地方。如果 left 设置为 30 像素,那么会在元素左边创建 30 像素的空间,也就是将元素向右移动
#box_relative {
position: relative;
left: 30px;
top: 20px;
}
绝对定位
绝对定位使元素的位置与文档流无关,因此不占据空间。这一点与相对定位不同,相对定位实际上被看作普通流定位模型的一部分,因为元素的位置相对于它在普通流中的位置
设置为绝对定位的元素框从文档流完全删除,并相对于其包含块定位,包含块可能是文档中的另一个元素或者是初始包含块。元素原先在正常文档流中所占的空间会关闭,就好像该元素原来不存在一样。元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框
固定定位
固定定位就是相当于浏览器窗口是它的父元素,相对与窗口定位
元素框的表现类似于将 position 设置为 absolute,不过其包含块是视窗本身
如果对你有帮助话,可以点个赞支持一下,整理不易!