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 calc()会计算属性详解
Feb 27 HTML / CSS
CSS3 制作旋转的大风车(充满童年回忆)
Jan 30 HTML / CSS
CSS类名支持中文命名的示例
Apr 04 HTML / CSS
利用css3径向渐变做一张优惠券的示例
Mar 22 HTML / CSS
你不知道的5个HTML5新功能
Jun 28 HTML / CSS
传统HTML页面实现模块化加载的方法
Oct 15 HTML / CSS
html5 分层屏幕适配的方法
Mar 16 HTML / CSS
html5声频audio和视频video等新特性详细说明
Dec 26 HTML / CSS
让IE9以下版本的浏览器兼容HTML5的方法
Mar 12 HTML / CSS
浅谈基于HTML5的在线视频播放方案
Feb 18 HTML / CSS
基于HTML5+Webkit实现树叶飘落动画
Dec 28 HTML / CSS
html5 video全屏播放/自动播放的实现示例
Aug 06 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创建多级目录代码
2008/06/05 PHP
php Smarty 字符比较代码
2011/02/27 PHP
php实现分页显示
2015/11/03 PHP
php常用图片处理类
2016/03/16 PHP
简单实现php上传文件功能
2017/09/21 PHP
为何说PHP引用是个坑,要慎用
2018/04/02 PHP
PHP创建自己的Composer包方法
2018/04/09 PHP
PHP通过curl获取接口URL的数据方法
2018/05/31 PHP
JQuery 学习笔记01 JQuery初接触
2010/05/06 Javascript
jquery 单击li防止重复加载的实现代码
2010/12/24 Javascript
JQuery教学之性能优化
2014/05/14 Javascript
JavaScript设计模式之装饰者模式介绍
2014/12/28 Javascript
Jquery实现顶部弹出框特效
2015/08/08 Javascript
Vuejs第十篇之vuejs父子组件通信
2016/09/06 Javascript
ionic2懒加载配置详解
2017/09/01 Javascript
Vue-cli中为单独页面设置背景色的实现方法
2018/02/11 Javascript
vue 项目地址去掉 #的方法
2018/10/20 Javascript
vue实现条件叠加搜索的解决方法
2019/05/28 Javascript
分析在Python中何种情况下需要使用断言
2015/04/01 Python
使用python检测主机存活端口及检查存活主机
2015/10/12 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
Python中反射和描述器总结
2018/09/23 Python
python里glob模块知识点总结
2021/01/05 Python
HTML5 Canvas实现360度全景图的示例代码
2018/01/29 HTML / CSS
打造经典复古风格的品牌:Alice + Olivia(爱丽丝+奥利维亚)
2016/09/07 全球购物
纽约服装和生活方式品牌:Saturdays NYC
2017/08/13 全球购物
国际奢侈品品牌童装购物网站:Designer Childrenswear
2019/05/08 全球购物
高校十八大报告感想
2014/01/27 职场文书
女子职高个人自荐书
2014/02/01 职场文书
合作经营协议书范本
2014/04/17 职场文书
规范化管理年活动总结
2014/08/29 职场文书
小学生运动会报道稿
2014/09/12 职场文书
运动会200米广播稿
2015/08/19 职场文书
《领导干部从政道德启示录》学习心得体会
2016/01/20 职场文书
利用Matlab绘制各类特殊图形的实例代码
2021/07/16 Python
Windows Server 2012配置DNS服务器的方法
2022/04/29 Servers