展开全部
这个真没有,
就好像,
爷爷的儿子是爸爸,爸爸的儿子是小明,,小明是成不了爷爷的儿子的。
如果你想小明相对于BODY,那你把父级DIV的绝对定位去掉,它就会对应再上级的定位了。
<body style="position:relative;">
<div id="a" style="position:relative; left:100px;background:#f00;width:100px;height:100px;">
<div id="b" style="position:absolute; left:300px;background:#000;width:100px;height:100px;"></div>
</div>
<div style="width:200px;height:auto;">在这里,不管你B怎么用position它都是A的子元素,所以它是要加上A的所有结果,比如left:100,所以B的left200最后会显示在left:300位置</div>
<div id="a" style="background:#f00;width:100px;height:100px;">
<div id="b" style="position:absolute; left:300px;background:#000;width:100px;height:100px;"></div>
</div>
<div style="width:200px;height:auto;">当你把A的定位样式去掉后,B的定位才会再在A再上一级的结果上定位,</div>
</body>
这段代码,你复制去运行一下,你就会发现它们之间的关系。。
要说一点就是,如果出现了父级使用了定位的情况下,你子元素还要需要相对于BODY来定位,,这只说明一个问题,你的布局思路有问题。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询