HTML5表格_动力节点Java学院整理


Posted in HTML / CSS onJuly 11, 2017

表格的作用是显示二维数据,在HTML5中不再允许用表格控制页面内容的布局,而是采用新增的CSS表格特性(这里不涉及CSS,将在后面介绍)。下面主要介绍用于制作表格的HTML元素。

构建表格

表格的基本元素包括:table、tr和td。
table表示HTML文档中的表格,支持border属性,用于定义表格边框的宽度;
tr表示表格中的行;
td表示表格中的单元格,包括如下属性:
  1)colspan:规定单元格可横跨的列数;
  2)rowspan:规定单元格可横跨的行数;
  3)headers:规定与单元格相关的标头,该属性不会在普通浏览器中产生任何视觉变化,但可以被屏幕阅读器使用。

<table>
 <tr>
  <td>Apples</td>
  <td>Green</td>
  <td>Medium</td>
 </tr>
 <tr>
  <td>Oranges</td>
  <td>Orange</td>
  <td>Large</td>
 </tr>
</table>

上面定义了一个两行、三列的表格,使用表格的好处是:浏览器会保证列的宽度满足最宽的内容,让行的高度满足最高的单元格。

表格边框

使用table元素的border属性,可以为表格添加边框。

<table border="1">
 <tr>
  <td>Apples</td>
  <td>Green</td>
  <td>Medium</td>
 </tr>
 <tr>
  <td>Oranges</td>
  <td>Orange</td>
  <td>Large</td>
 </tr>
</table>

浏览器的默认边框不太美观,通常还需要用CSS来为为各种元素重设边框样式。

不规则表格

使用单元格的colspan和rowspan属性可以构建不规则表格,使表格的某些行或者列跨越多个单元格,下面是一个单元格跨多列的一个例子:

<table border="1">
  <tr>
    <th>Month</th>
    <th>Savings</th>
  </tr>
  <tr>
    <td colspan="2">January</td>
  </tr>
  <tr>
    <td colspan="2">February</td>
  </tr>
</table>

下面是一个单元格跨多行的一个例子:

<table border="1">
  <tr>
    <th>Month</th>
    <th>Savings</th>
  </tr>
  <tr>
    <td>January</td>
    <td>$100.00</td>
    <td rowspan="2">$50</td>
  </tr>
  <tr>
    <td>February</td>
    <td>$10.00</td>
  </tr>
</table>

表头

th元素用于为表格添加表头,可以用来区分数据和对数据的说明。th元素支持如下属性:
  1)colspan:规定单元格可横跨的列数;
  2)rowspan:规定单元格可横跨的行数;
  3)scope:定义将表头数据与单元数据相关联的方法;
  3)headers:由空格分隔的表头单元格ID列表,为数据单元格提供表头信息,该属性不会在普通浏览器中产生任何视觉变化,但可以被屏幕阅读器使用。

<table>
 <tr>
  <th>Rank</th><th>Name</th>
  <th>Color</th><th>Size</th>
 </tr>
 <tr>
  <th>Favorite:</th>
  <td>Apples</td><td>Green</td><td>Medium</td>
 </tr>
 <tr>
  <th>2nd Favorite:</th>
  <td>Oranges</td><td>Orange</td><td>Large</td>
 </tr>
 <tr>
  <th>3rd Favorite:</th>
  <td>Pomegranate</td><td>A kind of greeny-red</td>
  <td>Varies from medium to large</td>
 </tr>
</table>

可以在一行中混合使用th和td。

让单元格关联表头

使用td的headers属性可以将单元格和表头关联,关联的目的主要是供屏幕阅读器和其他残障辅助技术用来简化对表格的处理。headers属性可以为一个或多个th单元格的id属性值:

<table border="1" width="100%">
  <tr>
 <th id="name">Name</th>
 <th id="Email">Email</th>
 <th id="Phone">Phone</th>
 <th id="Address">Address</th>
  </tr>
  <tr>
 <td headers="name">George Bush</td>
 <td headers="Email">someone@example.com</td>
 <td headers="Phone">+789451236</td>
 <td headers="Address">Fifth Avenue New York,USA</td>
  </tr>
</table>

构造复杂表头

使用th的colspan和rowspan属性可以构造复杂表头。

<table border="1">
  <tr>
    <th colspan="2">Company in USA</th>
  </tr>
  <tr>
    <th>Name</th><th>Addr</th>
  </tr>
  <tr>
    <td>Apple, Inc.</td>
    <td>1 Infinite Loop Cupertino, CA 95014</td>
  </tr>
  <tr>
    <td>Google, Inc.</td>
    <td>1600 Amphitheatre Parkway Mountain View, CA 94043</td>
  </tr>
</table>

为表格添加结构

可以使用thead、tbody和tfoot元素来为表格添加结构,这样可以让为表格各个部分添加CSS样式变得更加容易。
1)表格主题
tbody元素表示构成表格主题的全体行,不包括表头行(thead元素表示)和表脚行(tfoot元素表示)。
注意大多数浏览器在处理table元素时都会自动插入tbody元素。
2)表格表头
thead元素用来标记表格的标题行。如果没有thead元素的话,所有tr元素都会被视为表格主体的一部分。
3)添加脚注
tfoot元素用来标记组成表脚的行。在HTML5之前tfoot元素只能出现在tbody元素之前,而在HTML5中则允许将tfoot元素放在tbody之后。
下面是一个综合的例子,里面使用了tbody、thead和tfoot元素。

<table>
 <thead>
  <tr>
   <th>Rank</th><th>Name</th><th>Color</th><th>Size</th>
  </tr>
 </thead>
 <tfoot>
  <tr>
   <th>Rank</th><th>Name</th><th>Color</th><th>Size</th>
  </tr>
 </tfoot>
 <tbody>
  <tr>
   <th>Favorite:</th>
   <td>Apples</td><td>Green</td><td>Medium</td>
  </tr>
  <tr>
   <th>2nd Favorite:</th>
   <td>Oranges</td><td>Orange</td><td>Large</td>
  </tr>
  <tr>
   <th>3rd Favorite:</th>
   <td>Pomegranate</td><td>A kind of greeny-red</td>
   <td>Varies from medium to large</td>
  </tr>
 </tbody>
</table>

为表格添加标题

使用caption元素可以为表格定义一个标题,并将其与表格关联起来。

<table>
 <caption>Results of the 2011 Fruit Survey</caption>
 <thead>
  <tr>
   <th>Rank</th><th>Name</th><th>Color</th><th>Size</th>
  </tr>
 </thead>
 <tfoot>
  <tr>
   <th>Rank</th><th>Name</th><th>Color</th><th>Size</th>
  </tr>
 </tfoot>
 <tbody>
  <tr>
   <th>Favorite:</th>
   <td>Apples</td><td>Green</td><td>Medium</td>
  </tr>
  <tr>
   <th>2nd Favorite:</th>
   <td>Oranges</td><td>Orange</td><td>Large</td>
  </tr>
  <tr>
   <th>3rd Favorite:</th>
   <td>Pomegranate</td><td>A kind of greeny-red</td>
   <td>Varies from medium to large</td>
  </tr>
 </tbody>
</table>

一个表格只能包含一个caption元素,无需是表格的第一个元素,但始终显示在表格上方。

列分组

在表格中,由于表格都是按行组建的,导致对列的操作不太方便,例如为表格的某列定义样式。可以使用colgroup元素来指定列的分组。

<html>
<head>
    <style>
        #colgroup1{background-color: red}
        #colgroup2{background-color: green; font-size=small}
    </style>
</head>
<body>
<table width="100%" border="1">
  <colgroup id="colgroup1" span="2" ></colgroup>
  <colgroup id="colgroup2"></colgroup>
  <tr>
    <th>ISBN</th>
    <th>Title</th>
    <th>Price</th>
  </tr>
  <tr>
    <td>3476896</td>
    <td>My first HTML</td>
    <td>$53</td>
  </tr>
  <tr>
    <td>2489604</td>
    <td>My first CSS</td>
    <td>$47</td>
  </tr>
</table>
</body>
</html>

上面的例子中指定了两个列的组,第一个包含前2列,第二个包含剩下的1列,并为不同的分组指定了不同的样式。colgroup的span属性指定扩展几列,如果不指定span属性,也可以指定一个或多个col元素,下面的例子达到了和上面例子一样的效果。

<html>
<head>
    <style>
        #colgroup1{background-color: red}
        #col3{background-color: green; font-size=small}
    </style>
</head>
<body>
<table width="100%" border="1">
  <colgroup id="colgroup1">
 <col id="col1And2" span="2"/>
 <col id="col3"/>
  </colgroup>
  <tr>
    <th>ISBN</th>
    <th>Title</th>
    <th>Price</th>
  </tr>
  <tr>
    <td>3476896</td>
    <td>My first HTML</td>
    <td>$53</td>
  </tr>
  <tr>
    <td>2489604</td>
    <td>My first CSS</td>
    <td>$47</td>
  </tr>
</table>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
css3中检验表单的required,focus,valid和invalid样式
Feb 21 HTML / CSS
实例教程 纯CSS3打造非常炫的加载动画效果
Nov 05 HTML / CSS
8款使用 CSS3 实现超炫的 Loading(加载)的动画效果
Mar 17 HTML / CSS
HTML5实时语音通话聊天MP3压缩传输3KB每秒
Aug 28 HTML / CSS
HTML5 WebGL 实现民航客机飞行监控系统
Jul 25 HTML / CSS
HTML5之SVG 2D入门1—SVG(可缩放矢量图形)概述
Jan 30 HTML / CSS
微信html5页面调用第三方位置导航的示例
Mar 14 HTML / CSS
钉钉企业内部H5微应用开发详解
May 12 HTML / CSS
HTML+CSS+JS实现图片的瀑布流布局的示例代码
Apr 22 HTML / CSS
bootstrapv4轮播图去除两侧阴影及线框的方法
Feb 15 HTML / CSS
CSS中使用grid布局实现一套模板多种布局
Jul 15 HTML / CSS
CSS子盒子水平和垂直居中的五种方法
Jul 23 HTML / CSS
html5嵌入内容_动力节点Java学院整理
Jul 07 #HTML / CSS
html5定制表单_动力节点Java学院整理
Jul 11 #HTML / CSS
html5文本内容_动力节点Java学院整理
Jul 11 #HTML / CSS
HTML5中视频音频的使用详解
Jul 07 #HTML / CSS
html5组织文档结构_动力节点Java学院整理
Jul 11 #HTML / CSS
html5本地存储_动力节点Java学院整理
Jul 12 #HTML / CSS
html5服务器推送_动力节点Java学院整理
Jul 12 #HTML / CSS
You might like
PHP中将字符串转化为整数(int) intval() printf() 性能测试
2020/03/20 PHP
PHP 文本文章分页代码 按标记或长度(不涉及数据库)
2012/06/07 PHP
Laravel5中contracts详解
2015/03/02 PHP
ThinkPHP模板循环输出Volist标签用法实例详解
2016/03/23 PHP
PHP文件及文件夹操作之创建、删除、移动、复制
2016/07/13 PHP
PHP入门教程之数学运算技巧总结
2016/09/11 PHP
php实现PDO中捕获SQL语句错误的方法
2017/02/16 PHP
纯文字版返回顶端的js代码
2013/08/01 Javascript
javascript jq 弹出层实例
2013/08/25 Javascript
自己写的Javascript计算时间差函数
2013/10/28 Javascript
多选列表框动态添加,移动,删除,全选等操作的简单实例
2014/01/13 Javascript
jQuery中height()方法用法实例
2014/12/24 Javascript
nodejs redis 发布订阅机制封装实现方法及实例代码
2016/12/15 NodeJs
jQuery分页插件jquery.pagination.js使用方法解析
2017/02/09 Javascript
jQuery中常用动画效果函数知识点整理
2018/08/19 jQuery
小程序云函数调用API接口的方法
2019/05/17 Javascript
JS eval代码快速解密实例解析
2020/04/23 Javascript
JavaScript如何使用插值实现图像渐变
2020/06/28 Javascript
Vue Router中应用中间件的方法
2020/08/06 Javascript
浅谈Python 集合(set)类型的操作——并交差
2016/06/30 Python
Python 调用Java实例详解
2017/06/02 Python
python 获取一个值在某个区间的指定倍数的值方法
2018/11/12 Python
python集合常见运算案例解析
2019/10/17 Python
python对验证码降噪的实现示例代码
2019/11/12 Python
通俗讲解python 装饰器
2020/09/07 Python
Agoda.com官方网站:便宜预订全球酒店,高达80%的折扣
2018/04/04 全球购物
印度排名第一的蛋糕、鲜花和礼品送货:Winni
2019/08/02 全球购物
JPA面试常见问题
2016/11/14 面试题
Linux内核的同步机制是什么?主要有哪几种内核锁
2016/07/11 面试题
应届生法律顾问求职信
2013/11/19 职场文书
幼儿园教师请假制度
2014/01/16 职场文书
综合素质自我评价怎么写
2014/09/14 职场文书
小班教师个人总结
2015/02/05 职场文书
2016大学生诚信考试承诺书
2016/03/25 职场文书
如何用JavaScript实现一个数组惰性求值库
2021/05/05 Javascript
Redis数据结构之链表与字典的使用
2021/05/11 Redis