在css中使用浮动进行布局时, 例如如下的代码:
|
|
p标签这个块级元素会跟在child2那个div后面, 而不是在新行渲染, 因此我们需要清除浮动, 来恢复container的块元素效果.
解决办法
父元素定义height
将父元素的高度定义为子元素的高度, 以便将父元素撑起.123.container {height: 100px;}父元素末尾添加元素
在父元素的末尾添加一个具有clear:both属性的块级子元素, 也可以是具有display:block属性的行内元素, 该元素必须是个空元素, 不能包含其它内容.123456789.float-fix {clear:both;}<div class="container"><div class="child child1"></div><div class="child child2"></div><div class="float-fix"/></div>父元素定义overflow
给父元素添加overflow属性, 值可以为hidden或者auto.123.container {overflow: hidden;}父元素也浮动, 并且设置父元素宽度
1234.container {float: left;width: 100%;}父元素设置display: table
123.container {display: table;}父元素定义伪类
给父元素定义:after伪类, 并且使用类似方法2的方法来清除浮动.12345.container:after {content: "";display: block;clear: both;}