【问题标题】:CSS, making header and footer keep 100% width on browser resizeCSS,使页眉和页脚在浏览器调整大小时保持 100% 宽度
【发布时间】:2011-10-08 00:45:09
【问题描述】:

通过使用以前的问题,我几乎已经解决了这个问题,但我遇到了一个小问题。

当我调整浏览器的大小时,我需要我的页眉和页脚覆盖 100% 的页面,我已经通过在页眉和页脚上使用 min-width 解决了大部分问题。页眉的表现非常好,但页脚的右侧总是有一点空白。帮助? 注意:空白仅在浏览器调整大小(变小)时出现,并且始终等间距。

html,
body {
 margin:0;
 padding:0;
 height:100%;
}
#container {
   min-height:100%;
   position:relative;
}
#header {
   background:#ff0;
   padding:10px;
   min-width:1100px;
   }
#body {
  padding:10px;
  padding-bottom:60px;   /* Height of the footer */
 }
#footer {
 position:absolute;
  bottom:0;
  width:100%;
  height:60px;   /* Height of the footer */
  background:#6cf;
   min-width:1100px;
}

<div id="container">
<div id="header"></div>
<div id="body"></div>
<div id="footer"></div>
</div>

编辑:我已将页脚中的 min-width 更改为 1120px 作为创可贴解决方案,目前它正在工作。为什么这行得通??

【问题讨论】:

    标签: css footer


    【解决方案1】:

    您的问题是您在页眉上设置了padding:10px;min-width:1100px;,而在页脚上定义了min-width:1100px;。这导致了你的空白。

    试试这样的方法: http://jsfiddle.net/hrkp6/

    【讨论】:

    • 谢谢。这解决了它。另外,知道为什么如果在正文中添加太多内容会导致我的页脚不会沉到底部吗?
    • 为此,您需要一个粘性页脚。它永远不会那样做,因为它的位置是绝对的。
    【解决方案2】:

    你的标题中的填充把你搞砸了。

    我删除了它并为这个演示设置了一个固定的高度...

    http://jsfiddle.net/BA2UY/

    这是因为padding添加到元素的尺寸中,使其比您指定的更宽。

    【讨论】:

      【解决方案3】:

      试试这个:

      #footer {
       position:absolute;
        bottom:0;
        left: 0;
        right: 0;
        height:60px;   
        background:#6cf;
        /* get rid of min-width */
      }
      

      【讨论】:

      • 当内容与页脚重叠时会发生什么?
      • -- 不,抱歉,它不起作用。它让我想到了我之前遇到的问题,即如果我调整浏览器的大小,滚动时会有一个难看的空白。感谢您的意见。
      • 当前代码会发生同样的事情,根据 z-index 显示在顶部或底部。
      • 这里有一个min-width 没什么错...它只会制作一个滚动条而不是弄乱它的内容。
      • 不要使用身体两次。你已经有一个 body 元素。重命名为如内容
      猜你喜欢
      • 2011-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-14
      相关资源
      最近更新 更多