代码

<style>
    .box{
        width: 50px;
        height: 50px;
    }
    .box-up{
        background: blue;
    }
    .float-box{
        float: left;
        width: 500px;
        height: 200px;
        border: 1px solid red;
        background: rgba(255, 0, 0, 0.2);
    }
    .box-down{
        background: green;
    }
</style>

<div class="box-up box">up</div>
<div class="float-box"></div>
<span>this is a text</span>
<div class="box-down box">down</div>

在chrome在的表现

表现1:浮动元素只影响其在文档流下面的元素,其上面的元素不受影响,如box-up

表现2:浮动元素只影响块级元素,行内元素不受影响,如span,可以看到box-down里面的文字也不受影响。

有人会问为什么box-down不顶到float-box上边线呢?

这是因为box-downspan还在文档流中,所以box-down会另起一行,在span的下面。