如何使一个绝对定位元素尊重其父元素的填充?我想要一个内部div伸展横跨其父的宽度,并被定位在该父的底部,基本上是一个页脚。但是子进程必须尊重父进程的填充,而它并没有这样做。孩子被压在父母的边缘上。
所以我想要这个:
但我得到了这个
< html >
<身体>
< span style=" font - family:宋体;填充:10 px;位置:相对;身高:100 px;" >
< span style=" font - family:宋体;位置:绝对的;左:0 px;右:0 px;底部:0 px;div css sux " > < / >
< / div >
< /身体>
< / html >
我可以让它发生在内部div周围的边缘,但我宁愿不添加它。
这是我最好的尝试。我添加了另一个Div,并将其设置为红色,并将你的父级高度更改为200px,只是为了测试它。这个想法是,现在子变成了孙子,父变成了祖父。所以父结点尊重父结点。希望你明白我的意思。
<html>
<body>
<div style="background-color: blue; padding: 10px; position: relative; height: 200px;">
<div style="background-color: red; position: relative; height: 100%;">
<div style="background-color: gray; position: absolute; left: 0px; right: 0px;bottom: 0px;">css sux</div>
</div>
</div>
</body>
</html>
编辑:
我觉得你想做的事是做不到的。绝对位置意味着你要给它必须遵守的坐标。如果父元素的填充是5px。然后你把子图层放在最上面:-5px;左:5 px。怎么能同时尊重父母和你呢?
我的解决方案
如果你想让它尊敬父母,不要绝对定位它。