父元素如何围住浮动子元素

                 父元素如何围住浮动子元素

细节:父类是浮动的话根据继承关系,则父类里边的子类跟着父类一起浮动;但是子类都是浮动的话,

父类不设置浮动的则子类会脱离父类容器;解决:在父类容器中设置位置的子类为非浮动子类。(把浮动想象成泡沫体)

 

bug出现:父元素如何围住浮动子元素(当元素使用float属性,将脱离文档流,因此父元素(没有设置宽高时)便不会包围它。~父容器高度塌陷)

最常用的解决方法:父容器添加伪类after的属性:设置 空content、块属性,以及清除两边的浮动;

 

 

 

另外一种解决方式:在父容器的最后添加非浮动的清除元素

   第三种方法是给父元素最后添加一个非浮动的子元素,然后清除该子元素。由于父元素一定会包含非浮动的子元素,

通过把这个子元素放在浮动元素的下方,就可以保证父元素一定会包住这个元素,同时也会包住前面的浮动元素。

 

举例子:

li全浮动-》bug:

案例:就是li是浮动的,结构ul放的nav容器(父容器),直接被挤到上面,而不是被li的大小撑大!

解决:nav里边需要在搞一个div块,什么都不放,但是设置它的属性是clear:both;

                       

 

 

参考文章:https://www.itdaan.com/blog/2018/10/04/10f224e2497531561836951e8fa0ae96.html 

                《父元素如何围住浮动子元素

参考老九学堂:《8.5 解决父级边框塌陷的方法》的各种解决方法(实际应用上面已经写明,即下面的方法3伪类after那个方案啦)

 

 

posted @ 2021-07-12 14:03  一乐乐  阅读(128)  评论(0编辑  收藏  举报