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

清晰问题:对;

  •  2
  • toomanyairmiles  · 技术社区  · 16 年前

    这个页面有问题 http://www.gwynfryncottages.com/news.php

    .blog footer div需要在右边清除,以纠正图片的高度,引入clear:right;导致FF和IE中的页面出现巨大的空白。

    我迷路了,我尝试过很多方法来解决这个问题,现在我已经盯着它看太久了,看不清问题所在。有人能帮我吗?

    事先谢谢。

    2 回复  |  直到 16 年前
        1
  •  0
  •   Nicholas Wilson    16 年前

    尝试使用定位。添加这些以开始:

    #page-body {position: relative; width: 740px; margin-left: 20px;}
    #sidebar {position: absolute; right:-190px;}
    

    有一些微妙的地方,比如当整个内容不够长,无法向下推页脚时,获得正确的行为,但是我发现这些问题比浮动问题更容易解决。对于固定高度的页脚(如您的页脚),使用页面正文的下边距和一些更为绝对的页脚位置很容易解决这一问题。你可以玩一杯又一杯的额外潜水器。

        2
  •  0
  •   brainjam    16 年前

    这个 clear 属性相对于浮动元素工作。因此,您可以使用它来确保页脚关闭图片下方的DIV,但是侧边栏是浮动的,实际上会将内容向下推到侧边栏的底部。

    因此,正如@Nicholas Wilson所建议的,一种解决方案是使用float以外的方法来定位侧边栏。而且您的布局似乎并不真正需要为侧边栏浮动。

    在另一个方向,我注意到你目前正在硬编码你的照片的高度。既然你知道这些高度,另一种可能是忘记 clear:right 对于博客页脚,并添加 min-height 资产主体的属性,如(这是啤酒节)

    <div class="asset-body" style="min-height:184px;">
    

    当然不优雅也不干燥,但是如果你不得不这样做,你可以让javascript来做。