1

私はpadding: 16px 0; 3 つの div を互いに左に浮かせようとしていますが、それを行う方法に問題があります。

例: http://codepen.io/anon/pen/ifpAs

border-bottom: medium double red;section-one-widgets の 16 ピクセル下にある必要があります。

これが機能しないのはなぜですか? また、#search、#logo、#social などの特定の div ID をターゲットにせずにこれを行う方法はありますか?

ありがとうございました。

4

2 に答える 2

3
#section-one:after {
  content: "";
  clear: both;
  display: block;
}
于 2013-03-06T22:32:07.593 に答える
2

http://codepen.io/anon/pen/eqJBg

3 つの内部 div はすべてフローティングされているため、レイアウトから削除され、コンテナー div は 16 ピクセルの高さになります。そこにクリアを追加すると、期待どおりに機能するようになります。多くのリセット スタイル シートで実装されている clearfix に似ています。

[リンクのみの回答が気に入らないので編集]

HTML

<div id="section-one">
    ...
    <div class="clr"></div>
</div> <!--end #section-one-->

CSS

.clr {
  clear:both; 
}
于 2013-03-06T22:33:03.110 に答える