代码之家  ›  专栏  ›  技术社区  ›  Richard Knop

透明边距问题

css
  •  3
  • Richard Knop  · 技术社区  · 15 年前

    这是我的CSS(简化版):

    body {
        background: url('bg.gif') left top;
    }
    #content {
         background: #ddd;
    }
    .box {
        overflow: hidden;
        margin-top: 10px;
        background: #1e1e1e url('left-bottom-corner.gif') left bottom no-repeat;
    }
    

    和标记:

    <div id="content">
        <div class="box">
            <p>lorem ipsum</p>
        </div>
    </div>
    

    现在问题来了。在.box有10px上边距的地方,content div的背景不可见,相反,主体的背景可见。

    我不能使用填充,因为我需要设置.box分隔符的样式以具有圆形边框和它们自己的背景,所以我必须使用边距。

    我怎样才能纠正这种不正确的行为?

    1 回复  |  直到 15 年前
        1
  •  4
  •   Greg    15 年前

    这不是臭虫-它叫 margin collapsing .

    你可以做的是防止边缘接触-这就是为什么添加填充或边框可以修复它。