在CSS森林(30247792)群里讨论一个margin的问题中无意间发现overflow也可以用来清除浮动,嘿嘿,这个方法不单使用简单,而且FF、OP、IE7都支持,从此可以告别那又长兼容性又差的FF清浮动的方法了。
方法真的很简单,只要为需要清浮动的标签加上overflow这个属性。
====================CSS=========================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准备的。
注:忘了一个很重要的内容,并不是所有的overflow属性都可起来一样的效果,比如visible属性就只能对IE起作用。例子可以看这里Demo2
这样的话就有一个问题啦,如果要有高度,而且内容超出高度的时候,定义auto或hidden都可能会有一些不想要的效果出现。这里提供一个解决方案:对于IE6及以下版本的IE,可以直接定义高度;对于IE7、FF、OP,可定义min-height。====================CSS=========================
.overflow{height:auto;_height:200px;min-height:200px;overflow:auto;zoom:1;_overflow:visible;}
===============================================
在ajun.net里看到一个web IM”Me.dium“的介绍,由于是FF的插件,出于好奇也试用了一下,感觉不错,界面也很漂亮~
它是以FF插件的方式安装,注册一个ID后即可使用,操作十分简单,如果你用过GTalk的话,支持从Gmail、MSN、Hotmail、Yahoo和AOL导入好友。
Me.dium会把你正在访问的网页显示出来,Me.dium的用户只要登录了,就可以看到你正在访问哪个页面,还可以跟你进行即时聊天。
用FF的同学可以试试,我的ID是bias,欢迎加我哈~
近来把精力都转到了CSS森林上了,所以这里的更新可能会停上一段时间。
谢谢大家以往对我的支持!:)
有兴趣的同学可以去CSS森林看看,虽然还刚建不久,也正因此需要你们的支持!
看了之前的《两列一边宽度固定,另一边宽度自适应布局》后,觉得iVane的方法还可以再优化一下的,比如可以少用一个div……
自适应的问题也是布局中常会遇到的问题,最早用负边界的方法解决了高度自适应,没想法现在用负边界同样可以解决宽度自适应的问题。来看看怎样做吧:
================HTML===================
<body>
<div id="top">top</div>
<div id="main">
<div id="midpart"><p>主要内容部分,宽高自适应。</p></div>
<div id="leftpart"><p>左栏宽200像素,高度自适应。</p></div>
</div>
<div id="bottom">bottom</div>
</body>
======================================
================CSS===================
#top,#bottom{
clear:both;
width:100%;
height:auto;
padding:10px 0;
background-color:#0099FF;
}
#main{
_width:100%;
height:auto;
overflow:hidden;
padding:0;
padding-left:200px;
color:#000000;
}
#leftpart,#midpart{
height:auto;
margin-bottom:-32767px;
padding-bottom:32767px;
}
#midpart{
float:right;
width:100%;
background-color:#00CC99;
}
#leftpart{
_display:inline;
float:left;
width:200px;
margin-left:-200px;
padding-top:30px;
background-color:#999900;
}
======================================
这里对宽度自适应做了优化,并增加了高度自适应。如果要改成其它的二栏布局就很容易啦,比如可以改成“右栏定宽”或“左右栏都自适应宽高”。大家自己发挥吧~:)
注:此布局兼容IE5.5+、FF2、OP9+,其它版本的浏览没有测试过,有条件的同学帮忙看下吧。