现如今web2.0,web标准,div+css成为web开发中最热门的词,大家蜂涌地高呼页面的改版。节省带宽、多浏览器支持、结构和样式分离、易于编写等等无数优点都给人以诱惑,但你真得清楚吗?反正经过不短的一段时间的尝试,我是还不太明白。table这个在网页中运用最多的元素一下子像千古罪人一样被新潮唾弃,我这样一个传统的程序员实在是有些看不过去了。
个人认为table依然是web2.0的一部分,只是因为她太好用了而一直以来被人们滥用,层层复杂的嵌套不是table这个标签本身的错误。tr和td大概是绝大多数人对于table的仅有认识,其实th、caption、thead、tbody等等也是她的成员,又有多少人关注。我们再反观div+css,一直以来div是被大家忽视的,是这股潮流将她的光芒展现了出来,CSS的各种样式运用到div上之后让人们大开眼界,其实这不是div有多么了不起,而是CSS的伟大,当s拥有“display:block"后span同样有效。另外由于div基于float的缘故,其在不同浏览器中的差别也让人颇费脑筋,尤其是垂直居中的问题简直让很多人崩溃。Google或百度一下的结果实在是哭笑不得,但如果你还记得table,那问题其实没有这么复杂,好像没有哪个浏览器对table的解释上存在根本性的差异:
<div style="width:400px;height:300px;">
<table style="height:100%;">
<tr><td>slkfjlsk</td></tr>
</table>
</div>
这里再提一点不是table也有CSS,实际上用好CSS也能避免嵌套,因此人个认为div+css不等同web标准。table绝对是web中不可或缺的重要成员,其在很多方面是无法替代的。比如,二维表格数据的显示、长宽动态相关的情况、垂直居中等等。尤其是现今传统web人员思维的转变很难办,好东西不一定很马上适合,就像是现在的各种协议,估计重来一次得话谁也不会如此设计。当然也许有高手能够制作出绝妙的替代结构,但毕竟高手是少数,程序员中的芸芸众生基本没有这个能力,更何况用繁杂的CSS和div嵌套来取代table是不是有些不明智。
最后,我想说的是我们不应该将潮流视为圣典,面对问题还是应当理智地对待,有时亲自尝试一下,新身体验一把会更明白,也会更有份量。
个人认为table依然是web2.0的一部分,只是因为她太好用了而一直以来被人们滥用,层层复杂的嵌套不是table这个标签本身的错误。tr和td大概是绝大多数人对于table的仅有认识,其实th、caption、thead、tbody等等也是她的成员,又有多少人关注。我们再反观div+css,一直以来div是被大家忽视的,是这股潮流将她的光芒展现了出来,CSS的各种样式运用到div上之后让人们大开眼界,其实这不是div有多么了不起,而是CSS的伟大,当s拥有“display:block"后span同样有效。另外由于div基于float的缘故,其在不同浏览器中的差别也让人颇费脑筋,尤其是垂直居中的问题简直让很多人崩溃。Google或百度一下的结果实在是哭笑不得,但如果你还记得table,那问题其实没有这么复杂,好像没有哪个浏览器对table的解释上存在根本性的差异:
<div style="width:400px;height:300px;">
<table style="height:100%;">
<tr><td>slkfjlsk</td></tr>
</table>
</div>
这里再提一点不是table也有CSS,实际上用好CSS也能避免嵌套,因此人个认为div+css不等同web标准。table绝对是web中不可或缺的重要成员,其在很多方面是无法替代的。比如,二维表格数据的显示、长宽动态相关的情况、垂直居中等等。尤其是现今传统web人员思维的转变很难办,好东西不一定很马上适合,就像是现在的各种协议,估计重来一次得话谁也不会如此设计。当然也许有高手能够制作出绝妙的替代结构,但毕竟高手是少数,程序员中的芸芸众生基本没有这个能力,更何况用繁杂的CSS和div嵌套来取代table是不是有些不明智。
最后,我想说的是我们不应该将潮流视为圣典,面对问题还是应当理智地对待,有时亲自尝试一下,新身体验一把会更明白,也会更有份量。