Kumail.pk is a Free Platform of
Table Attributes
Table Attributes: The content is placed inside a cell in a table by using table data tag. A cell can contain any type of data such as text, image, media, link, etc.
Table Attributes
Table Data
Tables in HTML pages are created by using multiple HTML tags with specific attributes defining table structure. I have prepared HTML table attributes list, please feel free to use it as cheat sheet while crafting HTML tables and forms.
Table Attribute List
Define Table:
Columns to Span:
Rows to Span:
Desired Width:
– (in pixels)Width Percent:
– (percentage of table)Cell Color:
Table Caption:
Alignment:
– (above/below table)Table Border:
Cell Spacing:
Cell Padding:
Desired Width:
– (in pixels)Width Percent:
– (percentage of page)Table Row:
Alignment:
VALIGN=TOP|BOTTOM|MIDDLE>
Table Cell:
– (must appear within table rows)
Alignment:
VALIGN=TOP|BOTTOM|MIDDLE>
No linebreaks:
Columns to Span:
Rows to Span:
Desired Width:
Width Percent:
– (percentage of table)Cell Color:
Table Header:
– (same as data, except bold centered)
Alignment:
VALIGN=TOP|BOTTOM|MIDDLE>
No Linebreaks:
The HTML
Content categories | Flow content |
---|---|
Permitted content | |
Tag omission | None, both the starting and ending tag are mandatory. |
Permitted parents | Any element that accepts flow content |
Implicit ARIA role | table |
Permitted ARIA roles | Any |
DOM interface | HTMLTableElement |
Attributes
This element includes the global attributes.
Deprecated attributes
align
This enumerated attribute indicates how the table must be aligned inside the containing document. It may have the following values:
left
: the table is displayed on the left side of the document;center
: the table is displayed in the center of the document;right
: the table is displayed on the right side of the document.
Set
margin-left
andmargin-right
toauto
ormargin
to0 auto
to achieve an effect that is similar to the align attribute.bgcolor
The background color of the table. It is a 6-digit hexadecimal RGB code, prefixed by a ‘
#
‘. One of the predefined color kewords can also be used.To achieve a similar effect, use the CSS
background-color
property.border
This integer attribute defines, in pixels, the size of the frame surrounding the table. If set to 0, the
frame
attribute is set to void.To achieve a similar effect, use the CSS
border
shorthand property.cellpadding
This attribute defines the space between the content of a cell and its border, displayed or not. If the cellpadding’s length is defined in pixels, this pixel-sized space will be applied to all four sides of the cell’s content. If the length is defined using a percentage value, the content will be centered and the total vertical space (top and bottom) will represent this value. The same is true for the total horizontal space (left and right).
To achieve a similar effect, apply the
element, with its value set to collapse, and theborder-collapse
property to thepadding
property to the
elements.cellspacing
This attribute defines the size of the space between two cells in a percentage value or pixels. The attribute is applied both horizontally and vertically, to the space between the top of the table and the cells of the first row, the left of the table and the first column, the right of the table and the last column and the bottom of the table and the last row.
To achieve a similar effect, apply the
element. border-spacing does not have any effect ifborder-spacing
property to theborder-collapse
is set to collapse.frame
This enumerated attribute defines which side of the frame surrounding the table must be displayed.
To achieve a similar effect, use the
border-style
andborder-width
properties.rules
This enumerated attribute defines where rules, i.e. lines, should appear in a table. It can have the following values:
none
, which indicates that no rules will be displayed; it is the default value;groups
, which will cause the rules to be displayed between row groups (defined by the,
and
elements) and between column groups (defined by the
rows
, which will cause the rules to be displayed between rows;columns
, which will cause the rules to be displayed between columns;all
, which will cause the rules to be displayed between rows and columns.
To achieve a similar effect, apply the
, , , or elements.border
property to the appropriatesummary
This attribute defines an alternative text that summarizes the content of the table. Use the
element instead.width
This attribute defines the width of the table. Use the CSS
width
property instead.
Examples
Simple table
<table>
<tr>
<td>John</td>
<td>Doe</td>
</tr>
<tr>
<td>Jane</td>
<td>Doe</td>
</tr>
</table>
Further simple examples
<p>Simple table with header</p>
<table>
<tr>
<th>First name</th>
<th>Last name</th>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
</tr>
<tr>
<td>Jane</td>
<td>Doe</td>
</tr>
</table>
<p>Table with thead, tfoot, and tbody</p>
<table>
<thead>
<tr>
<th>Header content 1</th>
<th>Header content 2</th>
</tr>
</thead>
<tbody>
<tr>
<td>Body content 1</td>
<td>Body content 2</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>Footer content 1</td>
<td>Footer content 2</td>
</tr>
</tfoot>
</table>
<p>Table with colgroup</p>
<table>
<colgroup span="4"></colgroup>
<tr>
<th>Countries</th>
<th>Capitals</th>
<th>Population</th>
<th>Language</th>
</tr>
<tr>
<td>USA</td>
<td>Washington, D.C.</td>
<td>309 million</td>
<td>English</td>
</tr>
<tr>
<td>Sweden</td>
<td>Stockholm</td>
<td>9 million</td>
<td>Swedish</td>
</tr>
</table>
<p>Table with colgroup and col</p>
<table>
<colgroup>
<col style="background-color: #0f0">
<col span="2">
</colgroup>
<tr>
<th>Lime</th>
<th>Lemon</th>
<th>Orange</th>
</tr>
<tr>
<td>Green</td>
<td>Yellow</td>
<td>Orange</td>
</tr>
</table>
<p>Simple table with caption</p>
<table>
<caption>Awesome caption</caption>
<tr>
<td>Awesome data</td>
</tr>
</table>
Accessibility concerns
Captions
This helps people navigating with the aid of assistive technology such as a screen reader, people experiencing low vision conditions, and people with cognitive concerns.
Scoping rows and columns
The scope
attribute on header elements is redundant in simple contexts, because scope is inferred. However, some assistive technologies may fail to draw correct inferences, so specifying header scope may improve user experiences. In complex tables, scope can be specified so as to provide necessary information about the cells related to a header.
Example
<table>
<caption>Color names and values</caption>
<tbody>
<tr>
<th scope="col">Name</th>
<th scope="col">HEX</th>
<th scope="col">HSLa</th>
<th scope="col">RGBa</th>
</tr>
<tr>
<th scope="row">Teal</th>
<td><code>#51F6F6</code></td>
<td><code>hsla(180, 90%, 64%, 1)</code></td>
<td><code>rgba(81, 246, 246, 1)</code></td>
</tr>
<tr>
<th scope="row">Goldenrod</th>
<td><code>#F6BC57</code></td>
<td><code>hsla(38, 90%, 65%, 1)</code></td>
<td><code>rgba(246, 188, 87, 1)</code></td>
</tr>
</tbody>
</table>
Providing a declaration of scope="col"
on a
element will help describe that the cell is at the top of a column. Providing a declaration of scope="row"
on a
element will help describe that the cell is the first in a row.
- MDN Tables for visually impaired users
- Tables with two headers • Tables • W3C WAI Web Accessibility Tutorials
- Tables with irregular headers • Tables • W3C WAI Web Accessibility Tutorials
- H63: Using the scope attribute to associate header cells and data cells in data tables | W3C Techniques for WCAG 2.0
Complicated tables
Assistive technology such as screen readers may have difficulty parsing tables that are so complex that header cells can’t be associated in a strictly horizontal or vertical way. This is typically indicated by the presence of the colspan
and rowspan
attributes.
Ideally, consider alternate ways to present the table’s content, including breaking it apart into a collection of smaller, related tables that don’t have to rely on using the colspan
and rowspan
attributes. In addition to helping people who use assistive technology understand the table’s content, this may also benefit people with cognitive concerns who may have difficulty understanding the associations the table layout is describing.
If the table cannot be broken apart, use a combination of the id
and headers
attributes to programmatically associate each table cell with the header(s) the cell is associated with.
Table Attributes
Table Attributes
Apply for Free E-Certification