解决子元素浮动造成父元素高度塌陷的问题的几种方法

第一种:clear清除浮动

                在浮动元素后的同级元素直接用clear清除前一元素的浮动

第二种:伪类清除浮动

                一个父级元素内所有子元素都为浮动元素,则在父级元素尾部自动创建一个非浮动块状元素

第三种:子级方法 

                在子元素的最后添加一个高度为0的子元素,并且让他清除浮动

第四种:父级方法

                (1)给父元素设置display:inline-block; 

                (2)给父元素设置overflow:hidden;清除浮动,当子元素浮动时,给父元素添加overflow:hidden,按照它的第一个特性,应该将子元素超出的部分截掉,但是因为子元素有浮动,无法裁剪,所有只能由父元素增加高度去包裹住子元素,使得父元素拥有了高度,而这个高度是跟随子元素自适应的高度,这样就把浮动的子元素包含在父元素内了。

                (3)给父元素一个固定高度,此方法适用于子元素高度已知并且固定的情况 ;

                (4)利用伪元素:after,并且清除浮动 :利用伪类来清楚浮动,其效果跟创建一个空的div并设置其为clear:both;是一样的,只不过这里用伪类代替了空的div元素

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,843评论 1 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,879评论 1 45
  • relative:生成相对定位的元素,通过top,bottom,left,right的位置相对于其正常位置进行定位...
    zx9426阅读 992评论 0 2
  • 浮动,从诞生那天起,它就是个特别的属性——既为网页布局带来新的方法,却又随之产生一系列的问题。当然,随着时间的推移...
    郝特么冷阅读 861评论 0 6
  • 写文章所要达到的高度应该是怎样的呢?我常常为此感到困惑。思忖良久觉得应该是红楼梦的作者曹雪芹所说的那样:世事洞明皆...
    梦想2050阅读 2,219评论 34 81