CSS清除浮动

作者: 哎呦_連啓 | 来源:发表于2019-02-26 14:20 被阅读0次

块级元素在页面中独占一行,自上而下排列。但很多时候因为布局需要,我们需要在一行显示多个块级元素,这时我们就需要用到浮动,即float属性。使用float属性可以实现我们的需要的页面布局,但也会带来一些问题。浮动回事元素脱离文档流,会使父级元素高度无法撑开,与浮动元素同级的非浮动块级元素会被遮盖

<style>
        .box{
            width: 300px;
            border: 2px solid red;
        }
        .left{
            width: 100px;
            height: 100px;
            background: darkseagreen;
            float: left
        }
        .right{
            width: 100px;
            height: 200px;
            background: dodgerblue;
            float:right
        }
    </style>

<div class="box">
    <div class="left">left</div>
    <div class="right">right</div>
</div>
浮动带来的问题.png 浮动带来的问题2.png

为了解决浮动带来的问题,我们需要清除浮动,清除浮动的方法有以下几种:

1.给父级元素设置相对应的高度
<style>
        .box{
            width: 300px;
            height:200px;  /*给父级设置相应的高度*/
            border: 2px solid red;
        }
        .left{
            width: 100px;
            height: 100px;
            background: darkseagreen;
            float: left
        }
        .right{
            width: 100px;
            height: 200px;
            background: dodgerblue;
            float:right
        }
    </style>

<div class="box">
    <div class="left">left</div>
    <div class="right">right</div>
</div>
2.为父元素添加overflow:hidden/auto
<style>
        .box{
            width: 300px;
            border: 2px solid red;
            overflow: hidden;  /*给父级元素添加overflow: hidden或者oveflow: auto属性*/
        }
        .left{
            width: 100px;
            height: 100px;
            background: darkseagreen;
            float: left
        }
        .right{
            width: 100px;
            height: 200px;
            background: dodgerblue;
            float: right;
        }
    </style>

<div class="box">
    <div class="left">left</div>
    <div class="right">right</div>
</div>
3.在父元素结束标签之前插入清除浮动的块级元素
<style>
        .box{
            width: 300px;
            border: 2px solid red;
            overflow: hidden;  /*给父级元素添加overflow: hidden或者oveflow: auto属性*/
        }
        .left{
            width: 100px;
            height: 100px;
            background: darkseagreen;
            float: left
        }
        .right{
            width: 100px;
            height: 200px;
            background: dodgerblue;
            float: right;
        }
        .more{
            clear:both;
        }
    </style>

<div class="box">
    <div class="left">left</div>
    <div class="right">right</div>
    <div class="more"></div>
</div>
4.利用伪元素清除浮动

该样式在父元素的最后添加一个:after伪元素,通过清除伪元素浮动来撑起父元素的高度

<style>
        .box{
            width: 300px;
            border: 2px solid red;
            overflow: hidden;  /*给父级元素添加overflow: hidden或者oveflow: auto属性*/
        }
        .left{
            width: 100px;
            height: 100px;
            background: darkseagreen;
            float: left
        }
        .right{
            width: 100px;
            height: 200px;
            background: dodgerblue;
            float: right;
        }
        .clearfix:after{
            content: "";
            height: 0;
            clear: both;
            display: block;
        }
    </style>

<div class="box clearfix">
    <div class="left">left</div>
    <div class="right">right</div>
</div>

相关文章

  • CSS浮动续

    CSS清除浮动案例 CSS版心居中显示案例 清除浮动的四种用法: 1. 使用空标记清除浮动,隔墙法,增加标签 2....

  • CSS clear both清除浮动

    原文地址:CSS clear both清除浮动 DIV+CSS clear both清除产生浮动我们知道有时使用了...

  • 清除浮动

    一、清除浮动 or 闭合浮动 ? 清除浮动:清除对应的单词是 clear,对应CSS中的属性是 clear:lef...

  • 一篇文章带你了解CSS clear both清除浮动

    一、前言 CSS clear both清除产生浮动 ,使用了css float浮动会产生css浮动,这个时候就需要...

  • CSS 中的浮动

    浮动的定义: 元素脱离文档流 举栗子: 修改 CSS 代码,清除浮动: 浮动的影响: 父元素高度塌陷 清除浮动: ...

  • CSS浮动.清除浮动

    给父级元素设置高度 在底部添加一个空元素,清除浮动 父级div定义 overflow:hidden或者auto 为...

  • css浮动 清除浮动

    float : left | right | none 设计之初的作用是做文字环绕 p标签段落双标签块级 i...

  • Test10

    引用文章: 那些年我们一起清除过的浮动 CSS浮动float详解 Clear Float CSS float浮动的...

  • 经常写却记不住的前端代码

    CSS透明 清除浮动影响 响应式 css 文字处理

  • css3复习

    清除浮动: 方法:clear清除浮动(添加空div法)在浮动元素下方添加空div,并给该元素写css样式: ...

网友评论

    本文标题:CSS清除浮动

    本文链接:https://www.haomeiwen.com/subject/uparyqtx.html