<table rules="">
- Attribute of
- Create An HTML Table Quickly & Easily With Our Code Example
- What does
<table rules="">
do? - Was used to specify the display of internal borders between rows and colums. This attribute has been deprecated. Use CSS to style table borders instead.
Contents
The RULES
Attribute
RULES
, an HTML 4.0 attribute, indicates if there should be internal borders in the table. We’ll go over each of the values of RULES
and demonstrate how they are used. RULES
and FRAME
have an annoying way of changing each other’s defaults. To simplify your life, here’s a rule of thumb: if you use RULES
also use FRAME
and BORDER
. It’s easier to avoid getting confused.
The NONE
Value for the RULES
Attribute
RULES=NONE
means that there are no inside borders. RULES=NONE
is the default if you don’t use BORDER
or set it to zero, but otherwise must be explicitly stated to have no inside borders. Note that currently Netscape does not recognize RULES
.
<TABLE BORDER=2 RULES=NONE FRAME=BOX>
When applied to a table, that value gives us this result:
Name | Food |
---|---|
Starflower | stir fied tofu |
Miko | vegetable rice soup |
Andy | hummus |
Ping | french toast |
The ALL
Value for the RULES
Attribute
RULES=ALL
indicates that all the internal borders should be visible. RULES=ALL
is usually used in conjunction with FRAME=VOID
so that there are outer borders but no inner borders.
<TABLE BORDER=2 FRAME=VOID RULES=ALL>
When applied to a table, that value gives us this result:
Name | Food |
---|---|
Starflower | stir fied tofu |
Miko | vegetable rice soup |
Andy | hummus |
Ping | french toast |
The COLS
Value for the RULES
Attribute
COLS
indicates that there should be borders between the columns but not between rows.
<TABLE BORDER=2 RULES=COLS FRAME=BOX>
When applied to a table, that value gives us this result:
Name | Food |
---|---|
Starflower | stir fied tofu |
Miko | vegetable rice soup |
Andy | hummus |
Ping | french toast |
The ROWS
Value for the RULES
Attribute
RULES=ROWS indicates that there should be borders between rows but not between columns.
<TABLE BORDER=2 RULES=ROWS FRAME=BOX>
When applied to a table, that value gives us this result:
Name | Food |
---|---|
Starflower | stir fied tofu |
Miko | vegetable rice soup |
Andy | hummus |
Ping | french toast |
The GROUPS
Value for the RULES
Attribute
RULES=GROUPS
allows you to put borders between groups of table cells. There are two ways cells can be grouped: by row and by column. Let’s go over each of them. Note that currently Netscape does not recognize RULES
.
Grouping By Row
To group by row use the <THEAD ...>
, <TBODY ...>
, <TFOOT ...>
tags. <THEAD ...>
indicates the header rows of the table, <TBODY ...>
indicates the main body of the table, and <TFOOT ...>
indicates the bottom rows. So, for example, this code creates a table with three groups. Borders appear just between groups:
<TABLE BORDER=2 RULES=GROUPS> <THEAD> <TR><TH>Name</TH><TH>Food</TH><TH>Price</TH></TR> </THEAD> <TBODY> <TR><TD>Starflower</TD><TD>stir fied tofu</TD><TD>5.95</TD></TR> <TR><TD>Miko</TD><TD>vegetable rice soup</TD><TD>4.95</TD></TR> <TR><TD>Andy</TD><TD>hummus</TD><TD>3.95</TD></TR> <TR><TD>Ping</TD><TD>french toast</TD><TD>5.95</TD></TR> </TBODY> <TFOOT> <TR><TH COLSPAN=2>Total</TH><TD>20.80</TD></TR> </TFOOT> </TABLE>
Here’s how that table renders:
Name | Food | Price |
---|---|---|
Starflower | stir fied tofu | 5.95 |
Miko | vegetable rice soup | 4.95 |
Andy | hummus | 3.95 |
Ping | french toast | 5.95 |
Total | 20.80 |
Grouping By Column
To group by column use the <COLGROUP ...>
tag and its SPAN
attribute. <COLGROUP ...>
takes a little getting used to because it doesn’t actually go around any table cells. It goes at the top of the table code where it sets rules about the table columns including which are grouped together. <COLGROUP SPAN="...">
to indicates how many columns are in each group. If you leave SPAN out then it is assumed the group has just one column. So, for example, the following code says that the first column is in a group by itself and the three after that are together in a group. Notice that <COLGROUP ...>
requires an end tag. Borders will go only between the groups:
<TABLE BORDER=1 CELLPADDING=4 RULES=GROUPS FRAME=BOX> <COLGROUP></COLGROUP> <COLGROUP SPAN=3></COLGROUP>
Dropping those lines of html before the table contents produces this table:
Weekday | Date | Manager | Qty |
---|---|---|---|
Monday | 09/11 | Kelsey | 639 |
Tuesday | 09/12 | Lindsey | 596 |
Wednesday | 09/13 | Randy | 1135 |
Thursday | 09/14 | Susan | 1002 |
Friday | 09/15 | Randy | 908 |
Saturday | 09/16 | Lindsey | 371 |
Sunday | 09/17 | Susan | 272 |
Values of the rules
Attribute
Value Name | Notes |
---|---|
all | |
cols | |
groups | |
none | |
rows |
All Attributes of table
Element
Attribute name | Values | Notes |
---|---|---|
frame | hsides void vsides | The frame attribute was used to define the visible borders of a table. It is now deprecated and should no longer be used. |
height | ||
hspace | ||
rules | all cols groups none rows | |
summary | ||
width |