aboutsummaryrefslogtreecommitdiff
path: root/_posts/2024-02-23-Please_Make_Your_Table_Headings_Sticky.md
diff options
context:
space:
mode:
authorBradley Taunt <bt@btxx.org>2024-05-26 12:35:41 -0400
committerBradley Taunt <bt@btxx.org>2024-05-26 12:35:41 -0400
commitfa6aded86998639a53aecfa7b76e0ecd800fd9f0 (patch)
tree31d8e2fd1c9c9eb335151ab15301283156824a55 /_posts/2024-02-23-Please_Make_Your_Table_Headings_Sticky.md
parent010763789952b38c4974ae81d2fced03e623e2f8 (diff)
More post cleanup, mobile styling fixes
Diffstat (limited to '_posts/2024-02-23-Please_Make_Your_Table_Headings_Sticky.md')
-rw-r--r--_posts/2024-02-23-Please_Make_Your_Table_Headings_Sticky.md33
1 files changed, 33 insertions, 0 deletions
diff --git a/_posts/2024-02-23-Please_Make_Your_Table_Headings_Sticky.md b/_posts/2024-02-23-Please_Make_Your_Table_Headings_Sticky.md
new file mode 100644
index 0000000..c9005e4
--- /dev/null
+++ b/_posts/2024-02-23-Please_Make_Your_Table_Headings_Sticky.md
@@ -0,0 +1,33 @@
+---
+layout: post
+title: Please Make Your Table Headings Sticky
+---
+
+I often stumble upon large data sets or table layouts across the web. When these tables contain hundreds of rows of content, things become problematic once you start to scroll...
+
+ <video width="100%" controls>
+ <source src="/public/videos/not-fixed-header-tables.mp4" type="video/mp4">
+Your browser does not support the video tag.
+</video>
+
+Look at that table header disappear! Now, if I scroll all the way down to item #300 (for example) will I remember what each column's data is associated with? If this is my first time looking at this table - probably not. Luckily we can fix this (no pun intended!) with a tiny amount of CSS.
+
+## Sticky Header
+
+Check it out:
+
+ <video width="100%" controls>
+ <source src="/public/videos/fixed-header-tables.mp4" type="video/mp4">
+Your browser does not support the video tag.
+</video>
+
+Pretty awesome, right? It might look like magic but it's actually very easy to implement. You only need to add 2 CSS properties on your `thead`:
+
+ position: sticky;
+ top: 0;
+
+That's it! Best of all, `sticky` has [~96% global support](https://caniuse.com/?search=sticky) which means this isn't some "bleeding-edge" property and can safely support a ton of browsers. Not to mention the improved experience for your end-users!
+
+You can view a live demo of this table on the [CodePen example pen](https://codepen.io/bradleytaunt/pen/bGZyJBj).
+
+If you found this interesting, feel free to check out my other table-focused post: [Making Tables Responsive With Minimal CSS](https://btxx.org/posts/tables/)