为了账号安全,请及时绑定邮箱和手机立即绑定

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

我是这样理解的,绝对定位就是div移开了,然后被后面的子元素代替了或者说被另外一个div代替了,

而相对定位就是div位置移动了,但是原来的位置不会被别的子元素或者div代替是预留给自己的。(我这样理解对吗?新人求解)

正在回答

7 回答

绝对定位不是相对于浏览器窗口进行偏移吗(开始怀疑自己所学知识)

0 回复 有任何疑惑可以回复我~
#1

幕布斯5013342 提问者

两个都是的要自己设置,但绝对定位就是div移开之后然后原来的位置会被其他东西代替,相对定位不会。(我是认为的)
2020-02-29 回复 有任何疑惑可以回复我~

把这道题答案中的position:relative; 改成position:absolute;  你大概就能发现其中的微妙区别了。

在absolute 模型中对<div>位置更改会对其他标签的位置产生影响,但是relative模型相当于在原有的页面上,加了一个滤镜层(top layer);

然后在以之前的坐标为起始点,无论怎样移动,这个层面都只有自己一个标签,自然也就不会影响其他原始层页面上的相邻标签了。

2 回复 有任何疑惑可以回复我~

绝对定位:脱离文档流,相对于离他最近的具有定位属性的父元素偏移

相对定位:不脱离文档流,相对于它本身原来的位置进行偏移

固定定位:脱离文档流,相对于浏览器窗口进行偏移

5 回复 有任何疑惑可以回复我~

绝对定位,就近原则,即:最近的一个父元素使用了position除static值以外的定位,如果没有找到则参照body。我这么理解的。

0 回复 有任何疑惑可以回复我~

<!DOCTYPE html>

<html>


<head>

    <meta charset="UTF-8">

    <title>relative样式</title>

    <style type="text/css">

    #div1 {

        width: 200px;

        height: 200px;

        border: 2px red solid;

        position:relative;

        left:100px;

        top:50px;

    }

    </style>

</head>


<body>

    <div id="div1"></div>

</body>


</html>


0 回复 有任何疑惑可以回复我~

相对定位就是相对于自己本身而改变的位置,只随自己上一次的位置发生改变。

绝对定位是相对于最近的已定位的父元素发生位置改变,如果没有已定位的,那么就会相对于body,绝对定位也会脱离文本流

1 回复 有任何疑惑可以回复我~

绝对位置是相对于其最接近的一个具有定位属性的父包含块进行绝对定位。如果不存在这样的包含块,则相对于body元素,即相对于浏览器窗口。对上一节中的<div>标签来讲,他没有父级元素,所以是相对于<body>标签,即浏览器窗口进行丁文。

相对元素则是相对与该元素先前的位置去定位

4 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识HTML(5)+CSS(3)-升级版
  • 参与学习       1223090    人
  • 解答问题       18212    个

HTML(5)+CSS(3)基础教程8小时带领大家步步深入学习标签用法和意义

进入课程

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信