清除ul li里面的浮动并让ul自适应高度的一个好办法

有时候会遇到ul li列表里面的东西会用到浮动,这个时候ul的高度就不会被撑开,这怎么办呢?

1)最笨的方法就是设置ul的高度,但这种方法很死板,高度不能自适应

2)有次我试着在ul里面加一个清除浮动的div,这样能实现效果,但这种做法是错误的,不符合规范,所以绝对不能这样写。

1 <ul>
2   <li></li>
3   <div style="clear:both"></div>
4 </ul>

  坚决不能这样写哦!

3)最好的一个办法就是:在ul标签里添加:overflow:hidden;clear:both;这两个样式,妥妥的能让ul的高度撑开。

1 <ul style="overflow:hidden;clear:both;">
2    <li></li>
3 </ul>

  这也可以用于任何由于内部内容浮动之后,高度不能自适应的div元素。

  这个方法我感觉比加一个<div style="clear:both"></div>更好一点