0

div (div.bar) に margin-bottom を追加しようとしていますが、親 div を壊しています

このフィドルでは、私が言っていることを確認できます。

http://jsfiddle.net/dmsf/2JggY/

ただし、foo divに1pxの境界線を追加すると

.foo {
    background-color:#FFF;
    border: 1px solid;
    margin: 10px;
}

期待どおりに動作します。

1px の境界線なしで動作させることは可能ですか?

4

2 に答える 2

2

親に {overflow: hidden} または {overflow: auto} を設定します。

http://jsfiddle.net/2JggY/1/

.foo {
    overflow: auto
}
于 2013-03-04T18:41:46.323 に答える
0

これはマージンの崩壊 ( http://reference.sitepoint.com/css/collapsingmargins ) の場合です。これを修正するにはいくつかの方法があります。その 1 つは、要素内でパディングを使用することです。例を挙げて、.bar http://jsfiddle.net/davidpett/g2CzH/のマージン下部の代わりに、.foo で padding-bottom を使用します。

.foo {
    background-color:#FFF;
    margin: 10px;
    padding-bottom: 50px;
}

.bar {
    height:100px;
    background-color:#333;
}
于 2013-03-04T18:52:21.600 に答える