I learned some basic html table elements such as <table></table>,<tr></tr>, <tb></tb>. Therefore, I can use these elements to create a simple table.
Today, I continue to learn more html table elements to add more features to a table.
If a web page has a table, it is better to have a title for the table. So, we can get a quick idea about this table.
Therefore, we need to add <caption></caption> element under the <table></table> directly.
These three elements will help to mark up a header, body and footer section for a table. They are very useful for styling and layout.
<thead> </thead>stands for table header, which will be the first row containing the column headings.
<tbody></tbody>wrap the main body content of the table.
<tfoot> </tfoot> is the table footer, which is usually the final row of the table.
I will explain more details in the assessment example later.
Scope attribute can be added to the <th> element to tell screenreaders exactly what cells the header is a header for. And, scope has two values: "rowgroup" and "colgroup". (From MDN "The scope attribute)
Now let's do a project, which requires to use the above elements and attributes to create a Planet Chart. The detail information about the assessment, relevant css code, and data is at MDN table assessment page.
Basically, we want to create a table like this:
Today, I continue to learn more html table elements to add more features to a table.
<Caption>
Since we are not likely to read every detail on each website; in the other word, we like to scan content to save time.If a web page has a table, it is better to have a title for the table. So, we can get a quick idea about this table.
Therefore, we need to add <caption></caption> element under the <table></table> directly.
| screenshot from MDN Advanced Table Element |
<thead>, <tbody> & <tfoot>
These three elements will help to mark up a header, body and footer section for a table. They are very useful for styling and layout.<thead> </thead>stands for table header, which will be the first row containing the column headings.
<tbody></tbody>wrap the main body content of the table.
<tfoot> </tfoot> is the table footer, which is usually the final row of the table.
I will explain more details in the assessment example later.
Colspan, Rowspan & Scope Attributes
Some data belong to a group, so we will use "colspan" and "rowspan" attributes to make cell to span multiple columns and rows.Scope attribute can be added to the <th> element to tell screenreaders exactly what cells the header is a header for. And, scope has two values: "rowgroup" and "colgroup". (From MDN "The scope attribute)
Now let's do a project, which requires to use the above elements and attributes to create a Planet Chart. The detail information about the assessment, relevant css code, and data is at MDN table assessment page.
Basically, we want to create a table like this:
Key points for the project:
- Write caption by using <caption></caption>element.
- Enter the table headers inside <thead></thead> element, and enter main data inside <tbody></tbody> element. Since we need to span the cells later, so the first cell of the header row needs to be blank.
3. Once we finish all the row data, we need to use rowspan, colspan, and scope attributes to group the data.
For me, the hardest part is :
In this part, it shows that the cell" Gas giants " includes two cells: "Jupiter" and "Saturn". In order to structure the cell, we need to span the row by inserting rowspan="2" scope="rowgroup" inside <th> element. The "Ice giants" cell is spanbed the same way.
Since the cell "Jovian planet" include four rows: "Jupiter", "Saturn", "Uranus", and "Neptune". We will span the row by inserting rowspan="4" scope="rowgroup" inside <th> element.
In addition, the "Jovian planets" cell is in front of the "Jovian planets" and "Ice giants", so we put the <th rowspan="4" scope="rowgroup"> Jovian Plants </th> element on the top line.
Once we put all the relevant html correctly, the result will be:
By the way, I didn't show all the coding details here because that would be too much information. I don't want to make you feel bored and confused. You can always check the detail solution from the Planet Chart Data HTML Solution.
Comments
Post a Comment