代码之家  ›  专栏  ›  技术社区  ›  DisgruntledGoat

浮动元素后忽略元素边距

  •  4
  • DisgruntledGoat  · 技术社区  · 15 年前

    我有一个“清除” <hr> 标记上下页边距。但是,在两个浮动元素作为列之后,上边距将被忽略,并且行正好位于文本的下方。

    CSS:

    hr {
        width: 100%;
        height: 1px;
        border: 1px;
        background-color: #d3d7cf;
        color: #d3d7cf;
        clear: both;
        margin: 16px auto;
    }
    .column {
        text-align: center;
        float: left;
        margin-right: 16px;
        width: 200px
    }
    

    HTML:

    <hr/>
    <div class="column">asd<br />fgh</div>
    <div class="column">asd</div>
    <hr/>
    

    我发现我可以用 overflow: hidden 但是,是否有一个解决方案不需要向HTML添加额外的标记?

    2 回复  |  直到 13 年前
        1
  •  3
  •   Cathal    15 年前

    在“column”类中添加边距bottom:16px。

    或者在列中添加填充(显然,如果您在column类上使用borders,则不会添加填充)。

        2
  •  3
  •   random    15 年前

    添加 float:left HR 风格。

    这应该使 人力资源 以与漂浮物相同的流播放 DIV 并应用在CSS的第一个版本中丢失的上边距。