float浮动造成父级元素塌陷的解决方法
时间2024-05-21 08:32:04发布访客分类CSS浏览24
导读: 当给一个元素的父元素设置了背景颜色之后,再为子元素设置浮动后会发现父元素的背景颜色消失了,并且当父元素有一个边框时会发现浮动元素无法将边框撑开。 例:没有给li设置浮动 PHP中文网 PHP中文网 PHP...
当给一个元素的父元素设置了背景颜色之后,再为子元素设置浮动后会发现父元素的背景颜色消失了,并且当父元素有一个边框时会发现浮动元素无法将边框撑开。
例:没有给li设置浮动
PHP中文网
PHP中文网
PHP中文网
PHP中文网
效果图:
设置了浮动之后
PHP中文网
PHP中文网
PHP中文网
PHP中文网
效果图
从上图中可以看出当子元素设置了浮动之后,父元素的内容没有被撑开。也就是说元素设置浮动后,就不在整个文档流的管辖范围,那么它之前存在在父元素内的高度就随着浮动不复存在了,而此时父元素会默认自己里面没有任何内容(前提是未给父元素设置固定高度,如果父元素本身有固定高度,就不会出现这种情况)就会发生塌陷
父元素塌陷解决方法:
(1)给父级元素添加一个高度
此方法中高度无法确认,需要多次尝试设置
(2)在最后一个子元素后加一个空的div,给他添加样式clear,清除两侧浮动;
(3)父级元素设置overflow:hidden;
(4)父级元素添加after伪类;
.parent:after{
content:"";
display:block;
clear:both;
}
总结:以上就是本篇文章的全部内容了,希望对大家有所帮助。
本文转载自中文网
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: float浮动造成父级元素塌陷的解决方法
本文地址: https://pptw.com/jishu/664749.html