主页上的CSS页脚

时间:2015-09-11 13:38:24

标签: html css

我在使CSS工作时遇到了问题,特别是涉及到页脚时。

我有一个主体,我想与页脚分开。想象一个包含内容的框,下面有一个小空格(在我的CSS中称为" prefoot"),页面底部有一个页脚区域。

我真的不需要一个悬在内容上的粘性页脚(尽管这就是我目前的例子)。

最终,我不希望&#34; prefoot&#34;显示。我只想在<div class="main"><div class="footer">之间填充。

我如何获得&#34;页脚&#34;在底部,得到&#34; prefoot&#34;坐在它上面,让这两个结束后#34;主要&#34;?

&#13;
&#13;
body {
    color: #999999; /* silver */
    background-color: #004392; /* dress blues blue */
    font-family: sans-serif, monospace;
    text-shadow: 1px 1px 1px rgba(0,43,92,80);
}
div.main {
    position: absolute;
    left: 100px;
    width: 80%;
    overflow:auto;
}
.prefoot {
    display: block;
    background-color: gold;
    position: fixed;
    left: 50px;
    height: 20px;
    bottom: 30px;
    width: 80%;
}
.footer {
    display: block;
    background-color: red;
    position: fixed;
    left: 50px;
    height: 20px;
    bottom: 10px;
    width: 80%;
}
&#13;
<body>
    <div class="main">
        <h1>Body Ends at Prefoot</h1>
        <ul>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
        </ul>
        <img src="http://i.imgur.com/3DRalRX.gif" />
    </div>
    <div class="prefoot">
    </div>
    <div class="footer">
        Created 11 Sept 2015 (Remember 9/11!)
    </footer>
</body>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

页脚悬停在内容上的原因是因为您的内容为position: absolute;且页脚为position: fixed;。这将导致这两个元素都不会影响对方的位置,这意味着页脚不会简单地在内容之后“流动”;而页脚也设置在屏幕上的“固定”位置。尝试类似:

body {
    color: #999999; /* silver */
    background-color: #004392; /* dress blues blue */
    font-family: sans-serif, monospace;
    text-shadow: 1px 1px 1px rgba(0,43,92,80);
}
div.main {
    left: 100px;
    width: 80%;
    overflow:auto;
}
.footer {
	margin: 50px;
    display: block;
    background-color: red;
    left: 50px;
    height: 20px;
    bottom: 10px;
    width: 80%;
}
<body>
    <div class="main">
        <h1>Body Ends at Prefoot</h1>
        <ul>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
            <li>Lorem Ipsum</li>
        </ul>
        <img src="http://i.imgur.com/3DRalRX.gif" />
    </div>
    <div class="prefoot">
    </div>
    <div class="footer">
        Created 11 Sept 2015 (Remember 9/11!)
    </footer>
</body>

此外,使用应用于元素的边距可以实现'prefoot'的效果 - 例如上面margin: 50px;类中显示的.footer

希望这有帮助。

答案 1 :(得分:1)

如果您想在内容和页脚之间留一些空隙,请使用这些css

  body {
  background-color: #004392;
  color: #999999;
  font-family: sans-serif,monospace;
  margin: 0;
  text-shadow: 1px 1px 1px #002b5c;
   } 

                                                                              div.main {
  left: 100px;
  overflow: auto;
  position: relative;
  width: 80%;
   } 

.footer {
  background-color: #ff0000;
  bottom: 0;
  display: block;
  height: 20px;
  left: 50px;
  margin-top: 50px;
  position: relative;
  width: 80%;
   }