A hidden attribute on a <thead> tag hides the table header.
Although the table header is not visible, its position on the page is maintained.
A hidden attribute on a <thead>.
The table header is not visible.
First name | Last name |
---|---|
Denice | Hobermann |
Paulo | Cornell |
<style>
table.tb { width:300px; border-collapse: collapse; }
.tb th, .tb td { border: solid 1px #777; padding: 5px; }
.tb thead { background-color:lightblue; }
</style>
<table class="tb">
<thead hidden>
<tr>
<th>First name</th>
<th>Last name</th>
</tr>
</thead>
<tbody>
<tr>
<td>Denice</td>
<td>Hobermann</td>
</tr>
<tr>
<td>Paulo</td>
<td>Cornell</td>
</tr>
</tbody>
</table>
The hidden attribute hides the <thead> element.
You can specify either 'hidden' (without value) or 'hidden="hidden"'. Both are valid.
A hidden <thead> element is not visible, but it maintains its position on the page.
Removing the hidden attribute makes it re-appear.
<thead hidden>
<thead hidden="hidden">
Value | Description |
---|---|
hidden | Use 'hidden' or hidden='hidden'. Both are valid. |
Clicking the button toggles A hidden attribute on the <thead> element.
First name | Last name |
---|---|
Denice | Hobermann |
Paulo | Cornell |
<style>
table.tbl { width:300px; border-collapse: collapse; }
.tbl th, .tbl td { border: solid 1px #777; padding: 5px; }
.tbl thead { background-color:lightblue; }
</style>
<table class="tbl">
<thead id="mythead">
<tr>
<th>First name</th>
<th>Last name</th>
</tr>
</thead>
<tbody>
<tr>
<td>Denice</td>
<td>Hobermann</td>
</tr>
<tr>
<td>Paulo</td>
<td>Cornell</td>
</tr>
</tbody>
</table>
<br />
<button onclick="toggle(this)">Hide thead</button>
<script>
let toggle = button => {
let element = document.getElementById("mythead");
let hidden = element.getAttribute("hidden");
if (hidden) {
element.removeAttribute("hidden");
button.innerText = "Hide thead";
} else {
element.setAttribute("hidden", "hidden");
button.innerText = "Show thead";
}
}
</script>
Initially, the <thead> is visible.
Clicking the button calls JavaScript that toggles the hidden attribute.
With the hidden attribute the table header is invisible.
Here is when hidden support started for each browser:
Chrome
|
1.0 | Sep 2008 |
Firefox
|
1.0 | Sep 2002 |
IE/Edge
|
1.0 | Aug 1995 |
Opera
|
1.0 | Jan 2006 |
Safari
|
1.0 | Jan 2003 |