CSS中的BFC及其作用

2019-10-20  本文已影响0人  手指乐

触发红色盒子的BFC,可防止被绿色盒子遮挡


<style>
        *{
            padding:0;
            margin :0;
        }
        .box {
            width: 400px;
            height: 100px;
            margin: 0  auto;
        }
        .green {
            width: 100px;
            height: 50px;
            float: left;
            background-color: green;
        }
        .red {
            width: 200px;
            height: 100px;
            /* float: left; */
            /* display: inline-block; */
            /* display: table-cell; */
            /* overflow: hidden; */
            /* position: absolute; */
            /* position: fixed; */
            background-color: red;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="green"></div>
        <div class="red">BFC</div>
    </div>
</body>

把注释的任意一条打开会触发.red的BFC,让两者处于不同的BFC

绿盒子设置浮动后,父盒子高度塌陷:



盒子触发BFC可以解决这个问题

<style>
        .box {
            width: 200px;
            border: 1px solid #ccc;
            overflow:hidden;
        }
        .son {
            width: 100px;
            height: 100px;
            background-color: green;
            float: left;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="son"></div>
    </div>
</body>

在同一个BFC中时:


分为两个不同的BFC之后:


 <style>
        .green {
            width: 200px;
            height: 100px;
            margin-bottom: 20px;
            background-color: green;
        }
        .red {
            width: 200px;
            height: 100px;
            margin-top: 30px;
            background-color: red;
        }
        .box {
            overflow: hidden;

        } 
        .main {
            width: 300px;
            height: 250px;
            border: 1px solid #ccc;
        }
    </style>
</head>
<body>
        <div class="main">
            <div class="green"></div>
            <div class="box">
                <div class="red">BFC</div>
            </div>
        </div>   
</body>
上一篇下一篇

猜你喜欢

热点阅读