CSS父元素没有设置高度,元素浮动后父元素无法跟随子元素的高度-_-

html-css027

CSS父元素没有设置高度,元素浮动后父元素无法跟随子元素的高度-_-,第1张

最开始就是这样子啦,可是我脑子一热,想让b浮动(工作中确实会遇到这种情况),然后float:left,发现父元素没高度了(看起来就像父元素没了)。

就像这样子:

(其实我最开始是发现给了个border-bottom属性,它跑去顶部了)

这种情况,给父元素一个height值就可以了,可是我不能给它一个固定的高度,我想让它随内容的高度变化。

怎么办呢。

诶,我想到一个办法:

我在父元素最后添加了一个空的元素c,用c清空左右浮动,就又回到最开始的效果了,而且动态添加其他元素的话,父元素高度也会像开始那样随之变化了。

首先,(没有设置固定高度的情况下,实际开发一般是不会设置高度的,都由内容撑开)如果你给li设置了浮动,那么在没有给ul设置overflow来清除浮动的情况下ul就不会继承li的高度,也就是没有高度,如果你设置了清除浮动,那么ul的高度就是li的高度加边距