Changes between HTML 3.2 and HTML 4.0 - Tables
The HTML table model allows users to organize data in complex tabular
structures. Tables can include lists, paragraphs, forms, figures,
preformatted text, and other tables.
Table structure:
rows and columns may be grouped together to convey structural
information about the table; these groups may be rendered by user
agents in ways to emphasize this structure:
- An optional caption.
- One or more groups of rows.
Each row group consists of an optional head section, an optional
foot section, and a series of rows.
- One or more groups of columns.
- Each row consists of one or more cells.
- Each cell may contain either
header information (meant to describe the nature of data in the
column or row) or data. A cell may span more than one row or column.
HTML 4 tables offer improved control over the presentation of tabular
information:
- Alignment on designated characters such as "." and":"
(e.g., aligning a column of numbers on the decimal point).
- More flexibility in specifying table frames and rules.
- Incremental display of large tables as data is received.
- Support for scrollable tables with fixed headers
plus better support for breaking tables across pages for printing.
- Optional column based defaults for alignment properties.
A major goal has been to provide backwards compatibility with the
widely deployed Netscape implementation of tables.
The latest draft makes the
align
attribute compatible with the latest versions of the most popular browsers.
Some clarifications have been made to the recommended behavior when
absolute and relative column widths are mixed.
The
style attribute is included as a
means for extending the properties associated with edges and interiors
of groups of cells.
For instance, the line style: dotted, double,
thin/thick etc; the color/pattern fill for the interior; cell margins
and font information.
The
frame and
rules
attributes have been modified to avoid SGML
name clashes with each other,
and to avoid clashes with the
align and
valign
attributes.
Grouping
Rows and columns may be grouped together.
This grouping conveys structural information about the table and may
be rendered by user agents in ways to emphasize this structure.
Row groups are particularly useful in large tables.
Intelligent visual user agents may allow scrolling of a table body while
preserving the head and foot information on the screen.
Similarly,
when long tables are printed, the head and foot information may be
repeated on each page that contains table data.
A new element,
COLGROUP, has been
introduced to allow sets of columns to be grouped with different width
and alignment properties specified by one or more
COL
elements.
COLGROUP specifies that the next columns form a group.
It allows sets of columns to be grouped with different width and
alignment properties specified by one or more COL elements.
In the absence of any column group definitions,
a table is considered to have one column group that includes all columns
in the table.
At the time of writing, the latest version of
this browser
rendered the following example well, while the latest version of
this browser did not.
An Example of Grouping
Sequence number |
Name |
Height (cm) | Age (months) |
Color | Weight (lbs) | Velocity (ft/second) |
| 1 | Raptor | 21 | 5 | red | 5 | 33 |
| 2 | Senator | 26 | 4 | green | 6 | 56 |
| 3 | Dingo | 45 | 9 | blue | 3 | 23 |
| 4 | Rabbit | 43 | 3 | purple | 4 | 45 |
|