在做页面的时候,经常要根据不同的操作来显示或隐藏一个表格中的部分内容,隐藏一行直接用<tr>标签,隐藏多行时用<tbody>就很方便。
<table>
<tbody id=”content1″>
<tr><td>表单内容</td></tr>
</tbody>
<tbody id=”content2″ style=”display:none”>
<tr><td>多行内容</td></tr>
<tr><td>多行内容</td></tr>
</tbody>
</table>
用js来控制样式display来显示和隐藏,很方便。听说这样还可以控制网页加载时显示的顺序,content1会比content2先显示,而不是等表格加载完后一起显示,没有实验过,在表格数据很多时会有作用。
使用过程中发现<tbody>不能嵌套使用,会出现莫名的问题,<tbody>是用来定义表格主体的,定义多个主体不说,主体里再来个主体确实不符合W3C对其的定义,像下面这样使用看起来好像没错,但实际上是有错误的。
<table>
<tbody id=”all”>
<tbody id=”content1″>
<tr><td>表单内容</td></tr>
</tbody>
<tbody id=”content2″>
<tr><td>多行内容</td></tr>
<tr><td>多行内容</td></tr>
</tbody>
</tobdy>
</tbale>
做原型页面时会为了实现交互效果才这样用<tbody>,实际的后台编程中用不着,只要根据判断输出相应的表体就行了。
页面制作时表格的设计用<thead><tbody><tfoot><th><caption>等以前不常用的标签加上CSS的定义可以实现很多不错的效果,标准又语义,很强大,看过相关的一篇文章,找到收藏起来。