多个float的div 之间,想强制换行怎么办?
如
li {float:left;}- 测试1
- 测试2
- 测试3
- 测试4,这个li结束时我想换行
- 测试5
- 测试6,这个li结束我又不想换行
- 测试7
换行与不换行我可以随时更改,想换就换,想不换就不换,
请高手我该怎么做?
注:不要告诉我设置width(因为宽度要根据内容而定,li里可能是数据库取出的图片,无法确定宽度)
[b]问题补充:[/b]
具体怎么做?该怎么定义样式?
[b]问题补充:[/b]
to lovewhzlq :不浮动的话就都换行了,
在这里多个div的布局应该跟多个li的布局差不多吧!
[b]问题补充:[/b]
抛出异常的爱 为正解!
float:none;这个属性之前我很少用~
但是我想另外问一下,float:none与clear:both的区别是不是这样:
float:none,它还是使得这几个li之间还是处于同一层,而clear:both就是使该li没有float出来~~
[b]问题补充:[/b]
to lovewhzlq :
您的方法我测试过,还是不能实现我的效果,在这里应该是不能用clear:both吧~~,用了就又乱了,您看看:
[b]问题补充:[/b]
to lovewhzlq :
/**************************
clear:both;
CSS手册上这样解释的:该属性的值指出了不允许有浮动对象的边。
这个属性是用来控制float属性在文档流的物理位置的。
当属性设置float(浮动)时,他所在的物理位置已经脱离文档流了,但是大多时候我们希望文档流能识别float(浮动),或者是希望float(浮动)后面的元素不被float(浮动)所影响,这个时候我们就需要用clear:both;来清除clear:both;
***************************/
所以我们是不是应该在最后加一个
[b]问题补充:[/b]
就是使得ul里面包含了全部的li,而不置于使得float里的内容脱离ul
[b]问题补充:[/b]
to lovewhzlq :
如果您用firebug hacker的时候,你会发现用了这个与没有用这个的区别:ul的高度会不一样。
我曾经写过一个js向上滚动文字的效果时,发现如果不加这个li在ff,chorm,ie8可以滚动,而在 IE 5 6 7里就不行~~加了这个才行
[b]问题补充:[/b]
哦不是这个:
是这样,刚才写错了: