美文网首页
相对定位和绝对定位区别

相对定位和绝对定位区别

作者: 陌盍 | 来源:发表于2020-05-22 00:10 被阅读0次

HTML代码:

<div id="test1">111111111111111</div>
<div id="test2">222222222222</div>
<div id="test3">333333333333333</div>
image.gif

CSS代码:

#test1 {
    height: 50px;
    background: red;
}
#test2 {
    height: 50px;
    background: blue;
}
#test3 {
    height: 50px;
    background: yellow;
}
image.gif

初始布局效果:

image image.gif

1.相对定位:

position: relative;

相对于原来位置移动,元素设置此属性之后仍然处在文档流中,不影响其他元素的布局。

将第二个 div#test2 设为相对定位,元素相对于原来位置偏移:

#test2 {
   height: 50px;
   background: blue;
   position: relative;
   left: 20px;
   top: 20px;
}
image.gif

效果图如下:

image image.gif

2.绝对定位:

position: absolute;

元素会脱离文档流,如果设置偏移量,会影响其他元素的位置定位

  • 在父元素没有设置相对定位或绝对定位的情况下,元素相对于根元素定位(即html元素)(是父元素没有)。
  • 父元素设置了相对定位或绝对定位,元素会相对于离自己最近的设置了相对或绝对定位的父元素进行定位(或者说离自己最近的不是static的父元素进行定位,因为元素默认是static)。

将第二个 div#test2 设为绝对定位,元素在没有定义宽度的情况下,宽度由元素里面的内容决定:

(1)不设置偏移量:

#test2 {
   height: 50px;
   background: blue;
   position: absolute;
}
image.gif

效果图如下,元素脱离文档流:

image image.gif

(2)设置偏移量:

#test2 {
   height: 50px;
   background: blue;
   position: absolute;
   left: 20px;
   top: 20px;
}
image.gif

效果图如下,元素脱离文档流,且在父元素没有设置相对定位或绝对定位的情况下,元素相对于根元素定位(即html元素):

image image.gif

总结:

relative:定位是相对于自身位置定位(设置偏移量的时候,会相对于自身所在的位置偏移)。设置了relative的元素仍然处在文档流中,元素的宽高不变,设置偏移量也不会影响其他元素的位置。最外层容器设置为relative定位,在没有设置宽度的情况下,宽度是整个浏览器的宽度。

absolute:定位是相对于离元素最近的设置了绝对或相对定位的父元素决定的,如果没有父元素设置绝对或相对定位,则元素相对于根元素即html元素定位。设置了absolute的元素脱了了文档流,元素在没有设置宽度的情况下,宽度由元素里面的内容决定。脱离后原来的位置相当于是空的,下面的元素会来占据位置。

相关文章

  • 定位层

    一,定位层 概念 css属性 特点 二,绝对定位和相对定位 绝对定位和相对定位的区别

  • Css概念补充

    绝对定位和相对定位区别? 绝对定位:不脱离文档,依然占位,相对于自身原来位置进行改变 相对定位:脱离文档,不占位置...

  • 绝对定位

    相对定位和绝对定位的区别 相对定位是“相对于”元素在文档中的初始位置,而绝对定位是“相对于”最近的已定位祖先元素,...

  • 相对定位和绝对定位区别

    HTML代码: CSS代码: 初始布局效果: ​ 1.相对定位: position: relative; 相对于原...

  • 微信小程序 - 相对定位和绝对定位 - 相对路径和绝对路径

    微信小程序 - 相对定位和绝对定位 相对定位relative,绝对定位absolute 相对定位:元素是相对自身进...

  • 前端面试记录

    1.css盒子模型中的绝对定位和相对定位的区别? absolute 绝对定位是相当于父元素的定位; fixed 绝...

  • 微信小程序之绝对定位之居中微调

    1、绝对定位(absolute):该定位方式指相对于父级元素进行定位;区别于相对定位(relative),该定位方...

  • 19. 定位

    相对定位 绝对定位和固定定位:

  • 绝对定位和相对定位的区别(整理)

    绝对定位 absolute 设为absolute后元素框从文档流完全删除,所以元素框与文档流无关可以覆盖页面上的其...

  • css中的四种定位方式:static relative abso

    引子:相对定位和绝对定位的区别 static:静态定位,元素定位的默认值,表示元素在文档流中正常存在的位置,忽略各...

网友评论

      本文标题:相对定位和绝对定位区别

      本文链接:https://www.haomeiwen.com/subject/ltcfahtx.html