我的粘性页脚不起作用

时间:2013-04-18 21:37:15

标签: html css sticky-footer

我知道这个问题已被多次询问过,但我找不到真正适合我的解决方案。

我的HTML ...

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

我的css ....

body, html { min-height:100%;}

#container
  width: 980px;
  min-height: 100%;
  margin: 0 auto;}

footer {
  background-color: rgb(90,200,219);
  height: 50px;
  position: realative;
  margin-top: -50px;
  width: 100%; }

发生了什么,是页脚完全贴在页面底部。但是,当内容很短时,我仍然需要向下滚动才能找到贴在底部的页脚。有人能告诉我我的代码有什么问题吗?

2 个答案:

答案 0 :(得分:1)

尝试将这些方法放在一起。 https://gist.github.com/derek-duncan-snippets/4228927

body, html { /*body and html have to be 100% to push header down */
    height:100%;
    width: 100%;
}
body > #wrapper { /* all content must be wrapped... #wrapper is my id.  Position relative IMPORTANT */
    position: relative;
    height: auto;
    min-height: 100%;
}
#header {
    height: 100px;
    background: rgba(255,255,255,0.2);
}
#content-wrap { /*#content-wrap is the wrapper for the content without header or footer | padding-bottom = footer height */
    padding-bottom: 100px;
}
#footer { /* position must be absolute and bottom must be 0 */
    height: 100px;
    width: 100%;
    background: rgba(255,255,255,0.2);
    position: absolute;
    bottom: 0;
}

答案 1 :(得分:1)

我认为你应该修复你的CSS片段,因为它有很多错误。使用副本&amp;粘贴下次将它放在这里所以你的拼写错误不会让任何人失望。

body, html { min-height:100%; }

那应该是height:100%;,但我认为这可能是一个错字,因为你说的是​​页脚粘到底部,如果那条直线真的在你的实际CSS里就不会这样。

#container缺少括号,应为#container {

如果这些问题得到解决,除了@Owlvark指出的问题之外。它似乎在jsFiddle正常工作。我能想到的唯一改进是将margin: 0px;添加到body, html,这可能是你的问题,因为它摆脱了一些额外的空间,可以呈现垂直滚动条。但是当你说你必须“向下滚动才能找到页脚”时,你的问题似乎更严重。