【问题标题】:Why is the margin for my footer not being displayed? [CSS]为什么我的页脚边距不显示? [CSS]
【发布时间】:2013-04-14 12:22:52
【问题描述】:

这是一个相当基本的 HTML/CSS 问题,很抱歉我不得不在这里问这个问题(我已经尽力了!)。我编写了以下 HTML 和 CSS 代码,虽然标题部分与文章和旁边的部分相距 20 像素,但页脚仅相隔 10 像素。事实上,不管我为页脚设置的边距如何,间隔仍然是 10 像素。我做错了什么?

如果您可以在浏览器中测试此代码以了解我的意思,那就太棒了。我还在文章/旁边部分和页脚部分之间的倾斜边距下方插入了一个图片链接。

http://cl.ly/image/3M2u1L0x2C0x

HTML 代码

<!DOCTYPE html>
<html>
    <head>
    <title>My Grey Boxes</title>
    <link type="text/css" rel="stylesheet" href="stylesheet.css"/>
</head>

<body>
<div id="wrapper">
    <header></header>
    <article></article>
    <aside></aside>
    <footer></footer>
</div>
</body>
</html>

CSS 代码

#wrapper {
    margin: auto;
    width: 940px;
    }

body {
    background-color: #fafafa;
    }

header {
    height: 120px;
    width: 920px;
    display: block;
    margin: 10px 10px;
    position: relative;
    background-color: #c6c6c6;
    }

article {
    height: 740px;
    width: 600px;
    margin: 10px 10px;
    float: left;
    position: relative;
    background-color: #c6c6c6;
    }

/* Keep scrolling! */

aside {
    height: 740px;
    width: 300px;
    margin: 10px 10px;
    float: right;
    position: relative;
    background-color: #c6c6c6;
    }

footer {
    height: 120px;
    width: 920px;
    display: block;
    margin: 10px 10px; /* Why is this being ignored? */
    background-color: #c6c6c6;
    position: relative;
    clear: both;
    }

任何帮助将不胜感激!如果我没有遵守这里的所有社区准则,我很抱歉 - 这是我第一次在 StackOverflow 上发帖,我会尽快处理!提前谢谢! :)

【问题讨论】:

    标签: css margin footer


    【解决方案1】:

    您需要在到达页脚之前清除浮动。将您的 HTML 更改为此将起作用:

    <div id="wrapper">
        <header></header>
        <article></article>
        <aside></aside>
        <div style="clear:both;"></div>
        <footer></footer>
    </div>
    

    【讨论】:

    • 非常感谢!它确实有效,但我有点犹豫要不要使用它,因为我们正在添加一个 HTML 元素来解决外观问题。这不是 CSS 的工作吗?这是一篇解释得很好的文章,它尝试使用 overflow:hidden CSS 属性(以及其他一些方法)来处理它:bit.ly/YcXFNG;但是,我无法将其应用于我的文档。你可以调查一下吗?我刚刚开始使用 CSS,我非常非常感谢您的帮助!非常感谢您的耐心等待! :)
    • 感谢您为我指明正确的方向!我做了一些研究,最后发现这些文章解释了实现这一目标的 3 种不同方法(一种是您建议的,另一种是使用 CSS 的)。 1. CSS Floats 101:alistapart.com/article/css-floats-101 2. 使用 CSS 清除浮动:positioniseverything.net/easyclearing.html 3. 使用溢出清除浮动:自动或溢出:隐藏:quirksmode.org/blog/archives/2005/03/clearing_floats.html
    • 将元素纯粹用于此目的是很常见的。随意点击“打勾”接受我的回答:)
    猜你喜欢
    • 2016-11-04
    • 2012-08-05
    • 1970-01-01
    • 1970-01-01
    • 2013-03-04
    • 2013-03-31
    • 1970-01-01
    • 2017-12-11
    • 2020-07-10
    相关资源
    最近更新 更多