我刚刚阅读了应该支持多种现代浏览器(包括 FireFox 3.X、Safari 3.X 和 IE7+,但不包括 IE6-)的网络产品的代码。HTML 代码使用div而不是table来创建类似表格的效果。实际上,div的组织方式如下:
<div>
<div>
<div style="float:left" id="header1">...</div>
<div style="float:left">...</div>
<div style="float:left">...</div>
</div>
<div>
<div style="float:left" id="header2">...</div>
<div style="float:left">...</div>
<div style="float:left">...</div>
</div>
有一段 onload JavaScript 代码可以读取所有“headerX”元素,计算它们的最大offsetWidth。然后将最大offsetWidth分配给它们中的每一个。这样,div 就可以很好地对齐,就像表格一样。
实际上,我认为这不是一个好方法,但有人告诉我,该产品是这样设计的,以使其支持跨浏览器,因为表在不同浏览器中的行为不同。
我不相信。所以,问题。除了上面提到的方法之外,还有什么更好的方法可以为所有流行的浏览器制作类似表格的布局?