在我们接触html的时候,相信大家总是会遇到这样的问题
1.除了利用边距,可以实现指定位置的放置,还有没有其他方式呢?
2.当我们想让元素实现重叠的时候,应该怎么办 ?
定位——position 图文详解
a、定位背景
为了解决当边距实现不了元素放置指定位置的时候,咋整?
b、定位定义
定位顾名思义就是把指定元素放置到指定位置
c、定位功能
只要是你能看到的位置,无所不能

一、默认定位

position: static

默认值。没有定位,元素出现在正常的流中
定位——position 图文详解
对应的css:
定位——position 图文详解
结果显示:
定位——position 图文详解
我们可以很清楚的看到,三个块就是默认位置,所以默认定位是原始位置

二、固定定位

position: fixed

生成绝对定位的元素,相对于浏览器窗口进行定位。可以放在页面任何位置

元素的位置通过 “left”, “top”, “right” 以及 “bottom” 属性进行规定。
定位——position 图文详解
对应的css:
定位——position 图文详解
结果显示:
定位——position 图文详解
随着页面的滚动,ul的位置不变,所以定位是相对浏览器视窗定位的

三、相对定位

position: relative

生成相对定位的元素,对于自己原始位置进行定位
定位——position 图文详解
相对的css:
定位——position 图文详解
结果显示:
定位——position 图文详解
元素给自己相对定位,经过移动发现其相对自己原来位置定位,移动后不占空间,移动前的空间保留

四、绝对定位

position: absolute

生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。

元素的位置通过 “left”, “top”, “right” 以及 “bottom” 属性进行规定。
定位——position 图文详解
对应的css:
定位——position 图文详解
结果显示:
定位——position 图文详解
相对父元素的定位,给父元素加相对定位,给子块加绝对定位。如果父元素没有,层级往上找,最后到body

五、结论

relative
相对定位,相对自己定位,原始位置保留
新位置不占空间 ,层级变高

absolute
绝对定位,相对于父级元素中最近带有定位属性的元素去定位 ,定位前后都不占位置

fixed
固定定位,相当于浏览器视窗定位

值得注意的是:在absolute定位中,其父级元素,不单是指父亲,而是父亲元素 及以上所有的元素;

相关文章:

  • 2021-12-13
  • 2021-10-09
  • 2021-07-16
  • 2021-04-16
  • 2021-09-29
  • 2022-12-23
  • 2021-10-14
猜你喜欢
  • 2021-04-21
  • 2021-10-09
  • 2021-04-30
  • 2021-09-29
  • 2021-09-29
  • 2022-12-23
相关资源
相似解决方案