webrebuild.org第四届年会——金秋四城联动

邀您参加“裸奔”

在你对CSS华丽的效果着迷时,别忘了在华丽外表下面,最原始的文字。

邀您参与每年4月9号的“CSS裸奔节”,详情请登陆webrebuild.org

[原]清除浮动最简单的方法

Ghost 发表于 [2007-07-12 23:32]

在CSS森林(30247792)群里讨论一个margin的问题中无意间发现overflow也可以用来清除浮动,嘿嘿,这个方法不单使用简单,而且FF、OP、IE7都支持,从此可以告别那又长兼容性又差的FF清浮动的方法了。

方法真的很简单,只要为需要清浮动的标签加上overflow这个属性。

ul{list-style:none;height:auto;margin:0;padding:0;background-color:#436973;}<br/>
li{float:left;width:80px;height:80px;background-color:#83B1DF;}<br/>
.demo{clear:both;border:1px solid #FF00FF;margin-bottom:5px;}<br/>
.overflow{overflow:auto;zoom:1;background-color:#43FF73;}
<div class="demo">
<ul class="overflow">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
</ul>
</div>
<div class="demo">
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
</ul>
</div>

其中zoom是为了IE6准备的。

完整的Demo

注:忘了一个很重要的内容,并不是所有的overflow属性都可起来一样的效果,比如visible属性就只能对IE起作用。例子可以看这里Demo2
这样的话就有一个问题啦,如果要有高度,而且内容超出高度的时候,定义auto或hidden都可能会有一些不想要的效果出现。这里提供一个解决方案:对于IE6及以下版本的IE,可以直接定义高度;对于IE7、FF、OP,可定义min-height。

.overflow{
height:auto;
_height:200px;
min-height:200px;
overflow:auto;
_overflow:visible;
}

文章地址:http://www.cssforest.org/blog/index.php?id=36

[原]清除浮动最简单的方法》采用的授权是创作共用的 “署名-非商业性使用-相同方式共享 3.0 通用许可”.

文章被分类到:CSS


评论也精彩

  1. ddcat 在 800 日 之前 说:

    hoho,overflow还有另一个用处。。。。。

  2. 甲亢 在 645 日 之前 说:

    .overflow{height:auto;_height:200px;min-height:200px;overflow:auto;zoom:1;_overflow:visible;}
    这段代码是不是也可以实现高度自适应啊

  3. Ghost 在 644 日 之前 说:

    @甲亢 对IE6会有问题。

欢迎发表评论
  1. 请不要发表跟文章无关的评论,内容或站点如指向非个人博客地址的以发广告对待!
  2. 为抵制垃圾评论,留言需要先预览再点击提交。
  3. 评论支持textile语法,查看 textile帮助
  4. 还可以使用QQWeb输入法