这里介绍几个经常用的,
值 | 描述 |
---|---|
static | 静态的,默认值,没有定位,元素出现在正常的流中 |
relative | 相对定位 |
absolute | 绝对定位 |
fixed | 固定定位 |
注:
将元素的position设置为 relative / absolute / fixed 任意一种的话,那么该元素就称为"已定位元素"
static 定位:
默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明),可以把已定位的元素取消定位,
清除定位,例如:有10个 div, 想让其中一个不定位,其他九个全部绝对定位,这时就用到了 static.
举个栗子:
emmm,就做了个取消定位作用,(刚才在菜鸟的编译界面,设置了一下h1的top和left,当时居然移动了,然后我又查了下这儿属性,不应该有移动呀,然后又删除,重新写了遍,这次没加top啥的,然后这个属性没生效,还是重叠的,?????,再然后又打开个编译界面,重新写了个,这次正常了,加了之后就是保持在0,0位置,但是之前出现的问题没搞懂什么原因,再编辑就正常了,之前出现问题也没发生过,)
这个。。慢慢看吧,再遇到的话,再补充,
relative 定位: (相对定位
相对定位,相对定位元素经常被用来作为绝对定位元素的容器块,
元素先放置在未添加定位时的位置,再在不改变页面布局的前提下调整元素位置(因此会在此元素未添加定位时所在位置留下空白)。position:relative 对 table-*-group, table-row, table-column, table-cell, table-caption 元素无效
如图所示,设置relative后,移动相对定位元素,但它原本所占的空间不会改变。
absolute 定位 (绝对定位
绝对定位的元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于<html>:
absolute 定位使元素的位置与文档流无关,因此不占据空间。
absolute 定位的元素和其他元素重叠。
绝对定位的元素会变为块级元素
(任何元素变成绝对定位的话,就可以直接修改尺寸)
fixed 定位 (固定定位
元素的位置相对于浏览器窗口是固定位置。
即使窗口是滚动的它也不会移动:
就像B站,就是用了固定定位
举个栗子:
如图所示:
b1只是设置了固定定位,并没有设置上下左右位置,默认显示在其父元素位置基础上的0,0
c1设置固定定位,和左位置,这个显示左位置是在HTML页面的左,上下还是在其父元素基础的上下位置
c2设置固定定位,又设置了上和左位置,然后显示在HTML页面的上,左。和其父元素位置没关系,
嗯。。较为常用的就介绍到这儿,可能有啥遗漏的,还是老样子,随看随补充,