当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 对于IE7、FF、OP清除浮动的最优方法

CSS样式表
人们期待的CSS3的10大功能
网页设计过程中推荐的命名规范
漂亮样式表在XHTML+CSS网页制作中的应用
10个非常有用但是IE浏览器不能使用的CSS属性
CSS教程:div仿框架方法
CSS实例:CSS制作的像素图
点击网页超级链接虚线怎么去除?
CSS网页布局的一些常见规则
CSS教程:overflow与text-indent:-9999px
CSS样式表在网页设计中的4个特性
haslayout是什么意思
CSS教程:让IE6支持position:fixed
用css实现表格外观的无序列表
替换和不可替换元素以及显示元素
CSS属性选择器制作个性化链接样式
Webjx推荐15个好的CSS网格布局生成器
html教程:pre标记里内容自动换行
CSS技巧教程:css书写技巧
css教程:DIV布局网页的常见错误
IE中img多出5px的空白解决4种方法

CSS样式表 中的 对于IE7、FF、OP清除浮动的最优方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 208 ::
收藏到网摘: n/a

在CSS森林群里讨论一个margin的问题中无意间发现overflow也可以用来清除浮动,嘿嘿,这个方法不单使用简单,而且FF、OP、IE7都支持,从此可以告别那又长兼容性又差的FF清浮动的方法了。
方法真的很简单,只要为需要清浮动的标签加上overflow这个属性。
css代码
复制代码 代码如下:

ul{
list-style:none;
height:auto;
margin:0;p
adding:0;
background-color:#436973;
}
li{
float:left;
width:80px;
height:80px;
background-color:#83B1DF;
}
.demo{
clear:both;
border:1px solid #FF00FF;
margin-bottom:5px;
}
.overflow{
overflow:auto;
zoom:1;
background-color:#43FF73;
}
ul{
list-style:none;
height:auto;
margin:0;
padding:0;
background-color:#436973;
}
li{
float:left;
width:80px;
height:80px;
background-color:#83B1DF;
}
.demo{
clear:both;
border:1px solid #FF00FF;
margin-bottom:5px;
}
.overflow{
overflow:auto;
zoom:1;
background-color:#43FF73;
}

HTML代码
复制代码 代码如下:

<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准备的。
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]


注:忘了一个很重要的内容,并不是所有的overflow属性都可起来一样的效果,比如visible属性就只能对IE起作用。例子可以看这里
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

这样的话就有一个问题啦,如果要有高度,而且内容超出高度的时候,定义auto或hidden都可能会有一些不想要的效果出现。这里提供一个解决方案:对于IE6及以下版本的IE,可以直接定义高度;对于IE7、FF、OP,可定义min-height。
CSS代码
复制代码 代码如下:

overflow
{
height:auto;
_height:200px;
min-height:200px;
verflow:auto;
zoom:1;
_overflow:visible;
}