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

父子元素position中的absolute和relative问题

问题一:我试着敲了下代码,有这两个情况,结果都是一样的:

情况一:父子元素的position都是relative;

情况二:父元素的position是relative,子元素的position是absolute

如果两个情况结果都是一样的话,好像情况二是更通用的,但是为什么呢?

问题二:我还有一个代码搞不懂,是两个相邻的div元素,不是父子关系,position都是用的relative,但是结果显示的我始终没有搞明白:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>relative</title>
    <style>
        *{
            margin: 0;
        }
        body{
            height: 3000px;
        }

        .div1{
            width: 50px;
            height: 50px;
            background: red;
            position: relative;
            left: 50px;
            top: 10px;
        }

        .div2{
            width: 50px;
            height: 50px;
            background: blue;
            position: relative;                    
            left: 10px;
            top: 10px;
        }
    </style>
</head>
<body>
    <div class="div1">
    </div>
    <div class="div2">
    </div>
</body>
</html>

结果如下:

https://img1.sycdn.imooc.com//5cd1d6aa0001cf6213520347.jpg

可能图片显示的不是很清楚,劳烦大神复制一下,然后在浏览器上显示一下,我始终没有搞明白结果为什么是这样。

请大神们赐教。

正在回答

2 回答

 relative是相对位子,你在第一个div用relative,相对与原来的位子移动了,但是原来的静态位子是不会消失的,还是在哪,所以你下一个div是接的你上一个div原来的静态位子下来移动的

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

问题2:relative是相对于原来的位置进行的偏移,而且不脱离文档流,还是占据之前的空间位置,这样显示是对的

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

举报

0/150
提交
取消

父子元素position中的absolute和relative问题

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