CSS使用负相对定位问题

时间:2010-02-17 12:42:50

标签: css relative

我有一个标题,主体和页脚。标题和主体都有正确的样式。现在对于页脚我想让它出现在主体后面,所以我使用了:

z-index: -1;
position: relative;
top: -60px;

这给出了期望的结果,但我在底部得到了额外的60px空间。

如何清除这个额外空间?

6 个答案:

答案 0 :(得分:27)

保罗是对的。 margin-top: -60px;代替top: -60px;。另一种可能的解决方案是将“主体”设置为position: relative;然后在页脚上使用position: absolute; bottom: 60px; - 虽然这个结果意味着页脚需要在“主体”内移动。虽然只要页脚的父节点与“主体”一起流动,你就可以在该元素上使用相同的技巧。

答案 1 :(得分:6)

底部的“额外”空间是页脚占用的空间。相对定位的元素仍占用页面布局流程中的相同空间,即使它们出现在其他位置。

您可以在主体上尝试负底边距。您可能会发现这意味着您的页脚不需要top: -60px;

答案 2 :(得分:1)

实现这一目标的一种方法是将div放在另一个absolute'位置div中,以便将其从文档流中取出。

答案 3 :(得分:1)

不是您问题的直接答案,但根据您要在主要内容背后显示的内容,您可能只是伪造它。

如果是图片,您只需将其放入html {}body {}(或封装所有内容的div)并将其对齐到底部。

答案 4 :(得分:0)

另一个解决方案是:

z-index: -1;
position: relative;
top: -60px;
margin-bottom: -60px;

top创建额外的边距,margin-bottom删除它

由于某种原因,h标签只对我有用。负利润率最高不起作用

答案 5 :(得分:0)

适当的答案是使身体具有相对位置,然后使用绝对位置并使用选择的顶部来样式化您要样式化的样式