clear:both;
CSS手册上这样解释的:该属性的值指出了不允许有浮动对象的边。
这个属性是用来控制float属性在文档流的物理位置的。
当属性设置float(浮动)时,他所在的物理位置已经脱离文档流了,但是大多时候我们希望文档流能识别float(浮动),或者是希望float(浮动)后面的元素不被float(浮动)所影响,这个时候我们就需要用clear:both;来清除clear:both;
例子:
这个是第1列,
这个是第2列,
这个是列的下面。
的文字就会和第一二行在一起
所以我们在第3个这利加一个清除浮动。
这个是第1列,
这个是第2列,
这个是列的下面。
clear定义了一个元素是否可以放置在它之前的浮动元素旁边,或者必须向下移动在新行中放置https://www.apiref.com/css-zh/properties/layout/clear.htm
both:不允许有浮动对象
例子:
我有浮动
我在列的下面。
在ie中会兼容你一些问题 但是其它飞ie内核的就不管你了
所以在不需要一个div出现在另一个的同一行就用clear:both;吧