我想将几个div放入容器div中,并将它们排成一行,使容器看起来像里面有列。
<div>
<div id="col_1"></div>
<div id="col_2"></div>
</div>
我可以选择这些div为inline-block
或使float:left
具有特定宽度,并将空div添加到css样式为clear:both
的最后一个。
两者看起来都很好,但我应该采用哪种方式?
答案 0 :(得分:0)
总之,如果您的网页需要在旧浏览器上运行(少于IE8),请考虑使用float
方法。
如果您对此无关紧要,请使用display:inline-block(或任何其他新的显示属性)。它更干净(因为您不需要HTML元素来恢复浮动)并且更简单。
答案 1 :(得分:0)
这是个人选择。
使用浮动时,您必须清除它们,所以就像您说的那样,您可以添加清除div或使用overflow: auto;
制作容器。
使用inline-block
时,您应该记住,您应该将font-size: 0
添加到父div以删除div之间的间距,并将默认字体大小添加到div。 (有负余量修正,但我个人并不喜欢)
如果你想让col1在左边,col2在右边,最好使用浮动(左/右)。
如果您希望cols在中间/底部垂直对齐,请更好地使用inline-block
。
但对于大多数其他案例是个人选择。