css面试题

58 阅读1分钟

如何清除浮动?手写clearfix

清除浮动的方法

  • 父级加 overflow:hidden
  • 父级设置 clearfix
  • 父级也浮动

伪类清浮动法(手写clearfix)

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>如何清除浮动?手写clearfix</title>
</head>
<style>
    .clearfix::after{
        content: "";
        display: block;
        clear: both;
    }
    /* .clear{
        clear: both;
    } */
    .box{
        /* overflow: hidden; */
        /* float: left; */
        width: 500px;
        margin: 50px auto;
        border: 5px solid red;
    }
    .left{
        float: left;
        width: 200px;
        height: 200px;
        background-color: #ccc;
    }
</style>
<body>
    <div class="box clearfix">
        <div class="left">left</div>
        <div class="clear"></div>
    </div>
</body>
</html>