xxxxxxxxxx
Add table id="mainTable" then take this css
#mainTable>tbody {
display: block;
height: 400px;
overflow: auto;
}
#mainTable thead, tbody tr {
display: table;
width: 100%;
table-layout: fixed;
}
#mainTable thead {
width: calc( 100% - 1em );
}
xxxxxxxxxx
table tbody { display:block; max-height:450px; overflow-y:scroll; }
table thead, table tbody tr { display:table; width:100%; table-layout:fixed; }
xxxxxxxxxx
.tableFixHead { overflow: auto; height: 100px; }
.tableFixHead thead th { position: sticky; top: 0; z-index: 1; }
/* Just common table stuff. Really. */
table { border-collapse: collapse; width: 100%; }
th, td { padding: 8px 16px; }
th { background:#eee; }
xxxxxxxxxx
<div class="tableFixHead">
<table>
<thead>
<tr><th>TH 1</th><th>TH 2</th></tr>
</thead>
<tbody>
<tr><td>A1</td><td>A2</td></tr>
<tr><td>B1</td><td>B2</td></tr>
<tr><td>C1</td><td>C2</td></tr>
<tr><td>D1</td><td>D2</td></tr>
<tr><td>E1</td><td>E2</td></tr>
</tbody>
</table>
</div>