日期:2013-07-27  浏览次数:21110 次

  众所周知,FF和OPERA即其它遵照CSS2标准的浏览器由于版本的不断改进,早就支持:

  display:table

  dispaly:table-cell

  dispaly:table-row

  dispaly:table-row- group

  dispaly:table-column

  dispaly:table-column-group

  等属性。

  (至少是 FF1.0,OPERA7就能支持了,之前的就不太清楚了)那还犹疑什么?开始动手吧(为了演示加了一些 padding和border):


 IE不支持该效果,FF和OPERA下看看。

上面的示例分别定义了

#d{
       display:table;

#d ul{
       display:table-row-group;
}
#d li{
       display:table-cell;
}
那么它们在CSS2的款式里表现就分别相当于表格的
<tabel>
<tr>
<td>
标签,这样上面第一个示例里的5个 <li>就自然的被均分横向陈列在#b和#b ul里,一切都很正常,表格都是这么解释的。然而,细心的朋友又会想到另一个问题,当#d的宽度不能被所包含的#d li的节点数整除,#d li的宽度又是如何均分#d的宽度呢?它在浏览器下宽度尺寸又是如何表现的呢?为了说明问题,重新定义一个不被#d li的节点数整除的#d的宽度,这里任意给个799px,在FF/opera下测试看看: