Table with Fixed Header
How do I make an table with fixed header?
What is a table with fixed header? How do you make a table with fixed header? This script and codes were developed by Andy Vanee on 21 September 2022, Wednesday.
Table with Fixed Header - Script Codes HTML Codes
<!DOCTYPE html>
<html >
<head> <meta charset="UTF-8"> <title>Table with Fixed Header</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css"> <link rel="stylesheet" href="css/style.css">
</head>
<body> <div class="container"> <h1> Table With Fixed Header </h1> <p>Since <code>tbody</code> cannot normally scroll independently of <code>thead</code>, we use the default layout, measure the column sizes and then switch to fixed table-layout with explicit cell sizes. </p> <table class="fixed-header"> <thead> <tr> <th> One </th> <th> Two </th> <th> Three </th> <th> Four </th> </tr> </thead> <tbody> <tr> <td> Lorem ipsum </td> <td> 1299 </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, aut aspernatur beatae sit ipsam maiores tempore nulla modi! Molestias tempora, iure explicabo, delectus voluptatum et modi voluptates dolorem velit ut! </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem nesciunt expedita consequuntur ipsum! Quisquam commodi, neque vitae nihil nostrum soluta reprehenderit possimus corporis ratione, pariatur, aperiam qui deserunt modi unde. </td> </tr> <tr> <td colspan="4"> TODO: colspans still need work. </td> </tr> <tr> <td> Lorem ipsum </td> <td> 1299 </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, aut aspernatur beatae sit ipsam maiores tempore nulla modi! Molestias tempora, iure explicabo, delectus voluptatum et modi voluptates dolorem velit ut! </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem nesciunt expedita consequuntur ipsum! Quisquam commodi, neque vitae nihil nostrum soluta reprehenderit possimus corporis ratione, pariatur, aperiam qui deserunt modi unde. </td> </tr> <tr> <td> Lorem ipsum </td> <td> 1299 </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, aut aspernatur beatae sit ipsam maiores tempore nulla modi! Molestias tempora, iure explicabo, delectus voluptatum et modi voluptates dolorem velit ut! </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem nesciunt expedita consequuntur ipsum! Quisquam commodi, neque vitae nihil nostrum soluta reprehenderit possimus corporis ratione, pariatur, aperiam qui deserunt modi unde. </td> </tr> <tr> <td> Lorem ipsum </td> <td> 1299 </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, aut aspernatur beatae sit ipsam maiores tempore nulla modi! Molestias tempora, iure explicabo, delectus voluptatum et modi voluptates dolorem velit ut! </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem nesciunt expedita consequuntur ipsum! Quisquam commodi, neque vitae nihil nostrum soluta reprehenderit possimus corporis ratione, pariatur, aperiam qui deserunt modi unde. </td> </tr> <tr> <td> Lorem ipsum </td> <td> 1299 </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, aut aspernatur beatae sit ipsam maiores tempore nulla modi! Molestias tempora, iure explicabo, delectus voluptatum et modi voluptates dolorem velit ut! </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem nesciunt expedita consequuntur ipsum! Quisquam commodi, neque vitae nihil nostrum soluta reprehenderit possimus corporis ratione, pariatur, aperiam qui deserunt modi unde. </td> </tr> <tr> <td> Lorem ipsum </td> <td> 1299 </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, aut aspernatur beatae sit ipsam maiores tempore nulla modi! Molestias tempora, iure explicabo, delectus voluptatum et modi voluptates dolorem velit ut! </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem nesciunt expedita consequuntur ipsum! Quisquam commodi, neque vitae nihil nostrum soluta reprehenderit possimus corporis ratione, pariatur, aperiam qui deserunt modi unde. </td> </tr> <tr> <td> Lorem ipsum </td> <td> 1299 </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, aut aspernatur beatae sit ipsam maiores tempore nulla modi! Molestias tempora, iure explicabo, delectus voluptatum et modi voluptates dolorem velit ut! </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem nesciunt expedita consequuntur ipsum! Quisquam commodi, neque vitae nihil nostrum soluta reprehenderit possimus corporis ratione, pariatur, aperiam qui deserunt modi unde. </td> </tr> <tr> <td> Lorem ipsum </td> <td> 1299 </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, aut aspernatur beatae sit ipsam maiores tempore nulla modi! Molestias tempora, iure explicabo, delectus voluptatum et modi voluptates dolorem velit ut! </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem nesciunt expedita consequuntur ipsum! Quisquam commodi, neque vitae nihil nostrum soluta reprehenderit possimus corporis ratione, pariatur, aperiam qui deserunt modi unde. </td> </tr> <tr> <td> Lorem ipsum </td> <td> 1299 </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint, aut aspernatur beatae sit ipsam maiores tempore nulla modi! Molestias tempora, iure explicabo, delectus voluptatum et modi voluptates dolorem velit ut! </td> <td> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem nesciunt expedita consequuntur ipsum! Quisquam commodi, neque vitae nihil nostrum soluta reprehenderit possimus corporis ratione, pariatur, aperiam qui deserunt modi unde. </td> </tr> </tbody> </table>
</div> <script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js'></script> <script src="js/index.js"></script>
</body>
</html>
Table with Fixed Header - Script Codes CSS Codes
*, *:before, *:after { box-sizing: border-box;
}
.container { max-width: 42em; margin: 0 auto;
}
.container code { background-color: #eee; border: 1px solid #ddd; padding: 0 3px;
}
table { border-collapse: collapse;
}
table td, table th, table tbody { border: 1px solid #ddd;
}
table td, table th { border-width: 0 1px 1px; padding: 0.5em; text-align: left;
}
table thead td, table thead th { background-color: #eee; border-width: 1px 1px 0;
}
table tbody { border-width: 0 0 1px;
}
table.fixed-header tbody { overflow: scroll; max-height: 500px;
}
Table with Fixed Header - Script Codes JS Codes
'use strict';
$(window).on('resize', function () { var $table = $('.fixed-header'); var $cells = $table.find('tbody tr:first-child').find('td, th'); // Reset any fixed-layout CSS $table.css('table-layout', 'auto'); $table.find('tbody').css('display', 'table-row-group'); $table.find('tr').css('display', 'table-row'); $table.find('td, th').css('width', 'auto'); // Create a array of cell sizes var sizes = $cells.map(function (i, e) { return $(this).outerWidth(); }); // Apply fixed-layout CSS $table.css('table-layout', 'fixed'); $table.find('tbody').css('display', 'block'); $table.find('tr').css('display', 'block'); // set size for every th and td sizes.each(function (i, e) { var nth = 'nth-child(' + (i + 1) + ')'; $table.find('th:' + nth + ', td:' + nth).css('width', e + 'px'); }); // TODO: colspans should be doable from the sizes array, just messy $table.find('th[colspan], td[colspan]').css('width', 'auto');
}).trigger('resize');
Developer | Andy Vanee |
Username | andyvanee |
Uploaded | September 21, 2022 |
Rating | 3 |
Size | 4,293 Kb |
Views | 30,360 |
Find the perfect freelance services for your business! Fiverr's mission is to change how the world works together. Fiverr connects businesses with freelancers offering digital services in 500+ categories. Find Developer!
Name | Size |
Historical Data With Mouseover | 6,003 Kb |
Some perspective 2 | 4,282 Kb |
CSS Blend Modes 1 | 2,911 Kb |
FlipKittens | 2,464 Kb |
Even more perspective | 4,367 Kb |
Harmoniclock Spiro | 2,799 Kb |
Generic Stock | 6,058 Kb |
Responsive Banner with VW | 1,688 Kb |
A Pen by Andy Vanee | 1,912 Kb |
Css bullets | 1,618 Kb |
Jasper is the AI Content Generator that helps you and your team break through creative blocks to create amazing, original content 10X faster. Discover all the ways the Jasper AI Content Platform can help streamline your creative workflows. Start For Free!
Name | Username | Size |
Birthday Party Starter | Aussieyang | 1,629 Kb |
JavaScript constructors | Simboonlong | 2,415 Kb |
Wip elementary os navbar | Nickcolley | 2,993 Kb |
Spinners using Font Icons | Keyamoon | 3,007 Kb |
Animated Donut Chart | Jplhomer | 3,808 Kb |
Nested table email layout | Massimo-cassandro | 2,355 Kb |
Stylize Stories | Jvhti | 2,465 Kb |
Svg animation draw | SzymonDziewonski | 5,545 Kb |
My Starter Kit For Codepen | Dkdesign | 2,012 Kb |
CSS3 iPad | Vikvarg | 1,766 Kb |
Surf anonymously, prevent hackers from acquiring your IP address, send anonymous email, and encrypt your Internet connection. High speed, ultra secure, and easy to use. Instant setup. Hide Your IP Now!