CSS浮动引起的高度塌陷问题


Posted in HTML / CSS onAugust 05, 2022

正常页面布局

<style>
        *{
            margin:0;
            padding: 0;
        }
        .content{
            width:400px;
            border:1px solid #000;
            
        }
        .box{
            width:200px;
            height:200px;
            background: greenyellow;
            
        }
    </style>

<body>
    <div class="content">
        <div class="box"></div>
    </div>
    <p>基苦阿斯蒂芬</p>
</body>

CSS浮动引起的高度塌陷问题

当给类名为.box的盒子加上浮动后

<style>
        *{
            margin:0;
            padding: 0;
        }
        .content{
            width:400px;
            border:1px solid #000;
            
        }
        .box{
            width:200px;
            height:200px;
            background: greenyellow;
            float: left;
            
        }
    </style>

CSS浮动引起的高度塌陷问题

可以看到页面布局已经乱了,因为元素设置浮动后会脱离文档流

解决方案

1 利用BFC(给父元素加上overflow:hidden)

**缺点:父元素溢出的元素会隐藏,可能会影响页面显示 **

.content{
            width:400px;
            border:1px solid #000;
            overflow: hidden;
            
        }

2 加空div

要点:
1.加上一个空的块级元素
2.对块级元素进行清除浮动, 省事方法,不管理是左浮还是右浮,直接全清(clear:both)

<style>
        *{
            margin:0;
            padding: 0;
        }
        .content{
            width:400px;
            border:1px solid #000;
            /* overflow: hidden; */
            
        }
        .box{
            width:200px;
            height:200px;
            background: greenyellow;
            float: left;
            
        }
        .clear{
            clear: both;
        }
    </style>
    
<body>
    <div class="content">
        <div class="box"></div>
        <div class="clear"></div>
    </div>
    <p>基苦阿斯蒂芬</p>
</body>

3 利用伪元素

要点:
1 其实和加空div的原理是一致的,唯一要记住的就是把伪元素转为块级元素(display:block),否则会没有效果
2 还有伪元素的属性不要忘记加上(content:‘’)

<style>
        *{
            margin:0;
            padding: 0;
        }
        .content{
            width:400px;
            border:1px solid #000;
            /* overflow: hidden; */
            
        }
        .content::after{
            content: '';
            display: block; // 必须要转换为块元素
            clear: both;
        }
        .box{
            width:200px;
            height:200px;
            background: greenyellow;
            float: left;
            
        }
        /* .clear{
            clear: both;
        } */
    </style>

<body>
    <div class="content">
        <div class="box"></div>
        <!-- <div class="clear"></div> -->
    </div>
    <p>基苦阿斯蒂芬</p>
</body>

到此这篇关于CSS浮动引起的高度塌陷问题的文章就介绍到这了,更多相关CSS浮动高度塌陷内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
纯CSS3实现图片无间断轮播效果
Aug 25 HTML / CSS
CSS3 Backgrounds属性相关介绍
May 11 HTML / CSS
纯CSS3实现自定义Tooltip边框涂鸦风格的教程
Nov 05 HTML / CSS
CSS3对背景图片的裁剪及尺寸和位置的设定方法
Mar 07 HTML / CSS
CSS3 2D模拟实现摩天轮旋转效果
Nov 16 HTML / CSS
Canvas 文字碰撞检测并抽稀的方法
May 27 HTML / CSS
在html5的Canvas上绘制椭圆的几种方法总结
Jan 07 HTML / CSS
5个你不知道的HTML5的接口介绍
Aug 07 HTML / CSS
HTML5新特性之语义化标签
Oct 31 HTML / CSS
HTML5实现音频和视频嵌入的方法
Aug 22 HTML / CSS
html5默认气泡修改的代码详解
Mar 13 HTML / CSS
Css预编语言及区别详解
Apr 25 HTML / CSS
使用CSS实现六边形的图片效果
Aug 05 #HTML / CSS
el-form每行显示两列底部按钮居中效果的实现
Aug 05 #HTML / CSS
纯CSS打字动画的实现示例
Aug 05 #HTML / CSS
新的CSS 伪类函数 :is() 和 :where()示例详解
前端使用svg图片改色实现示例
Jul 23 #HTML / CSS
详解flex:1什么意思
Jul 23 #HTML / CSS
CSS子盒子水平和垂直居中的五种方法
Jul 23 #HTML / CSS
You might like
解析php中memcache的应用
2013/06/18 PHP
PHP之APC缓存详细介绍 apc模块安装
2014/01/13 PHP
关于php支持分块与断点续传文件下载功能代码
2014/05/09 PHP
php获取数据库中数据的实现方法
2017/06/01 PHP
PHP实现根据密码长度显示安全条
2017/07/04 PHP
Yii1.1框架实现PHP极光推送消息通知功能
2018/09/06 PHP
PHP addAttribute()函数讲解
2019/02/03 PHP
解决Laravel5.5下的toArray问题
2019/10/15 PHP
jquery实现div阴影效果示例代码
2013/09/16 Javascript
编写高效jQuery代码的4个原则和5个技巧
2014/04/24 Javascript
jquery获取及设置outerhtml的方法
2015/03/09 Javascript
javascript函数自动执行常用方法汇总
2016/03/28 Javascript
Java框架SSH结合Easyui控件实现省市县三级联动示例解析
2016/06/12 Javascript
手动初始化Angular的模块与控制器
2016/12/26 Javascript
详解从react转职到vue开发的项目准备
2019/01/14 Javascript
微信小程序 Storage更新详解
2019/07/16 Javascript
通过实例解析javascript Date对象属性及方法
2020/11/04 Javascript
Python中的lstrip()方法使用简介
2015/05/19 Python
详解Python如何生成词云的方法
2018/06/01 Python
Linux 修改Python命令的方法示例
2018/12/03 Python
python3+selenium自动化测试框架详解
2019/03/17 Python
python判断文件夹内是否存在指定后缀文件的实例
2019/06/10 Python
python读取大文件越来越慢的原因与解决
2019/08/08 Python
Python Websocket服务端通信的使用示例
2020/02/25 Python
TensorFlow keras卷积神经网络 添加L2正则化方式
2020/05/22 Python
css3实现背景动态渐变效果
2019/12/10 HTML / CSS
美国性感内衣店:Yandy
2018/06/12 全球购物
Mamaearth官方网站:印度母婴护理产品公司
2019/10/06 全球购物
荷兰天然和有机产品网上商城:BigGreenSmile.nl
2020/07/26 全球购物
土木工程师岗位职责
2013/11/24 职场文书
简历中求职的个人自我评价
2013/12/03 职场文书
大学活动策划书范文
2014/01/10 职场文书
同意迁入证明模板
2014/10/26 职场文书
北京导游词
2015/02/12 职场文书
解决golang在import自己的包报错的问题
2021/04/29 Golang
一起来看看Vue的核心原理剖析
2022/03/24 Vue.js