1

我在我的固定布局中使用了 nicolas Gallagher 的 micro-clearfix。在我的布局中,没有出现绿色页脚。这意味着 clearfix 无法正常工作

<div class="container">
    <aside class="al">
    </aside>
    <section class="content">

    </section>
    <aside class="ar">
    </aside>
    <footer class="cf">
    </footer>
</div>

css

.container {
    width: 500px;
    height: 400px;
    margin: 0 auto;
}
.al {
    background: red;
    width: 100px;
    height: 100px;
    float: left;
}
.content {
    float: left;
    width: 300px;
    height: 100px;
    background: black;
}
.ar {
    background: red;
    width: 100px;
    height: 100px;
    float: left;
}
footer {
    background: blue;
    width: 100%;
    height: 100px;
    background: green;
}

和微clearfix

.cf:after, .cf:before {
    content: " ";
    display: table; 
}
.cf:after {
    clear: both;
}
.cf {
    *zoom: 1;
}

演示

我究竟做错了什么。我如何使这项工作。有人可以帮我吗

4

2 回答 2

5

您通常将 clearfix 应用于包含所有浮动的元素。

但是,在这种情况下,最简单的解决方案是根本不使用 clearfix 来包含浮动,而是使用clear: bothon footer

http://jsfiddle.net/thirtydot/4NJ6v/3/

如果你真的想在这里使用 clearfix,它看起来像这样:

http://jsfiddle.net/thirtydot/4NJ6v/6/

如您所见,div必须添加额外的包装,这不是很好。

于 2013-09-11T06:16:01.163 回答
1

添加clear:both到页脚http://jsfiddle.net/4NJ6v/4/或者您可以添加float:left到页脚

于 2013-09-11T06:17:07.620 回答