当前位置: 首页 > 图文教程 > 网页制作 > HTML/XHTML教程 > HTML的10个表格相关标记

HTML/XHTML教程
一些不太常用的XHTML标签用法以及实例
网页中图片的设置涉及的三个问题
商业HTML邮件的制作建议
HTML Marquee 字符片段滚动
DOCTYPE 文档类型声明(网页爱好者必看)
纯HTML标签你熟悉多少?
HTML元素的ID和Name属性的区别
HTML meta的大作用
HTML标签tbody的用法与说明
HTML 特殊字符转换表
HTML基础 HTML的组成结构
HTML基础之HTML内容细则
Shtml 精简教程
浅谈html table 标签
html Frame、Iframe、Frameset 的区别
HTML 网页页面切换的各种变换效果
HTML的10个表格相关标记
让IE8启动IE7兼容模式的代码
HTML 结构化实现方法
xhtml的块级标记小结

HTML/XHTML教程 中的 HTML的10个表格相关标记


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 45 ::
收藏到网摘: n/a

事实上很多人会说”我看到永远不应该使用表格”的说法,但是这绝对是错误的!这个建议只是针对使用HTML表格来定义网页的布局,但是表格在方便的排列数据信息行和列方面非常完美,而且如果你一定要在一个页面上显示表列数据,你就不得不使用它们!为什么不呢?然而,在这种情况下,一些人无视了用于table的某些HTML标签的存在并且不知道该如何正确的使用它们。

HTML有10个表格相关标签。下面是一个带有简介的列表,但是首先,文档要被正确的定义在HTML 4.01/XHTML 1或HTML 5下面:

       
  • <caption> 定义表格标题(4, 5)
  •    
  • <col> 为表格的列定义属性(4, 5)
  •    
  • <colgroup> 定义表格列的分组(4, 5)
  •    
  • <table> 定义表格(4, 5)
  •    
  • <tbody> 定义表格主体(4, 5)
  •    
  • <td> 定义一个单元格 (4, 5)
  •    
  • <tfoot> 定义表格的表注(底部)(4, 5)
  •    
  • <th> 定义表格的表头 (4, 5)
  •    
  • <thead> 定义表格的表头(4, 5)
  •    
  • <tr> 定义表格的行(4, 5)

一个基本的表格结构如下:

重新认识table

它包含一个标题、头部、主体和底部。正确的HTML元素顺序是:

       
  1. <table>
  2.    
  3. <caption>
  4.    
  5. <thead>
  6.    
  7. <tfoot>
  8.    
  9. <tbody>

你也可以使用<col><colgroup> 来定义表格的列或为列分组:

       
  1. <table>
  2.    
  3. <caption>
  4.    
  5. <colgroup>
  6.    
  7. <col>
  8.    
  9. <thead>
  10.    
  11. <tfoot>
  12.    
  13. <tbody>

下面是一个正确的表格结构实例:

复制代码
代码如下:

<table border="1">
<caption>Table caption here</caption>
<colgroup span="1" style="background:#DEDEDE;"/>
<colgroup span="2" style="background:#EFEFEF;"/>
<!-- Table Header-->
<thead>
<tr>
<th>Head 1</th>
<th>Head 2</th>
<th>Head 3</th>
</tr>
</thead>
<!-- Table Footer-->
<tfoot>
<tr>
<td>Foot 1</td>
<td>Foot 2</td>
<td>Foot 3</td>
</tr>
</tfoot>
<!-- Table Body-->
<tbody>
<tr>
<td>A</td>
<td>B</td>
<td>C</td>
</tr>
<tr>
<td>D</td>
<td>E</td>
<td>F</td>
</tr>
</tbody>
</table>

在浏览器中的结果如下图所示:
重新认识table

关于表格的一些技巧

       
  • 根据w3schools的解释和用法,在一个table定义中,<tfoot>元素必须出现在<tbody>之前,这样,浏览器就可以在接受到所有数据之前呈现表注了。另外,如果不是这个顺序,将不能通过W3C的HTML4和XHTML验证,无论你声明哪种DTD。
  •    
  • 在 HTML 4.01 中,表格的alignbgcolor属性不赞成使用,所以在HTML 5中不再有任何table的属性被支持(事实上,在XHTML 1.0 Strict DTD中已经不支持”align”和”bgcolor”属性了);
  •    
  • 所有主流浏览器都支持<colgroup> 标签,但是Firefox、Chrome 以及 Safari 仅支持 colgroup 元素的 span 和 width 属性;
  •    
  • css中的empty-cells:show|hide 可以设定空单元格是否显示边框。注意,这个需要设置在table而不是td/th中。IE6中比较容易遇到该问题;
  •    
  • css中的border-collapse:collapse | separate 可以设置表格的边框是否被合并成一个边框;
  •    
  • css中的border-spacing属性等效于table的cellspacing属性。

为了实现现在所提倡的表现和结构分离的开发模式,前端观察建议将页面中所有与表现层有关的东东,都用CSS来控制,不用HTML自带的属性来控制页面的表现,而table是最容易被忽略的一个。

关于table的更多详细内容可以查看W3C的文档: w3 Introduction to tables

最后留一个非常简单的问题给大家,CSS的哪个属性等效于table的cellpadding属性?