代码之家  ›  专栏  ›  技术社区  ›  codingbbq

使用负相对定位问题的css

  •  18
  • codingbbq  · 技术社区  · 16 年前

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

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

    这得到了期望的结果,但是我在底部得到了60像素的额外空间。

    如何清除多余的空间?

    6 回复  |  直到 9 年前
        1
  •  27
  •   prodigitalson    16 年前

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

        2
  •  6
  •   Paul D. Waite    16 年前

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

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

        3
  •  3
  •   Mike Shema    10 年前

    您仍然可以使用:

    position: relative;
    top: -60px;
    

    对于你需要但已设置的部分

    margin-top: -60px;
    

    到下面出现的部分。在这种情况下-页脚。

        4
  •  1
  •   raveren    16 年前

    实现这一点的一种方法是将div放在另一个div中, absolute “ly定位div,以便将其从文档流中取出。

        5
  •  1
  •   jeroen    16 年前

    并不是对你的问题的直接回答,但取决于你想在主要内容后面显示什么,你也许可以只是假装。

    如果是图像,你可以简单地把它放进去 html {} body {} (或封装所有内容的div)并将其与底部对齐。

        6
  •  0
  •   Mantas    9 年前

    另一个解决方案是:

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

    顶部创建额外的边距,底部删除边距

    出于某种原因,只有这个对我有效。负边缘顶部不起作用