Adrian Roselli buzzed in<\/a> with additional context in the comments as well.<\/p>\n\n\n\n
\n\n\n\nIt\u2019s 2025, and we can create tabs with HTML and CSS only without any hacks. I don\u2019t know about you, but this developer is happy today, even if we still need a little patience for browsers to fully support these features.<\/p>\n\n\n\n\n<\/baseline-status>\n\n\n\n\n<\/baseline-status>\n\n\n\n<\/p>\n","protected":false},"excerpt":{"rendered":"
Can we use the <details><\/code> element as the foundation for a tabbed interface? Why yes, we can!<\/p>\n","protected":false},"author":259791,"featured_media":390055,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"inline_featured_image":false,"c2c_always_allow_admin_comments":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_share_on_mastodon":"1","_share_on_mastodon_status":"An interesting idea from @cita@mastodon.social to use the <details> element for tabbed UI rather than, say, the checkbox hack.\r\n\r\n%permalink%"},"categories":[4],"tags":[686,808,586,1567],"class_list":["post-389805","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-articles","tag-grid","tag-html-elements","tag-layout","tag-subgrid"],"acf":{"show_toc":"Yes"},"share_on_mastodon":{"url":"https:\/\/mastodon.social\/@csstricks\/115446618402164329","error":""},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2025\/10\/details-tabs-subgrid.webp?fit=1200%2C600&ssl=1","jetpack-related-posts":[{"id":270706,"url":"https:\/\/css-tricks.com\/grid-level-2-and-subgrid\/","url_meta":{"origin":389805,"position":0},"title":"Grid Level 2 and Subgrid","author":"Chris Coyier","date":"May 8, 2018","format":false,"excerpt":"I find the concept of subgrid a little hard to wrap my mind around. I do understand the idea that we want to use nested semantic markup as we like and have elements participate in one grid so we don't have to flatten our markup just for layout reasons. But\u2026","rel":"","context":"In "Links"","block_context":{"text":"Links","link":"https:\/\/css-tricks.com\/category\/links\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":282798,"url":"https:\/\/css-tricks.com\/what-we-want-from-grid\/","url_meta":{"origin":389805,"position":1},"title":"What We Want from Grid","author":"Chris Coyier","date":"February 26, 2019","format":false,"excerpt":"We felt spoiled with CSS grid for a minute there. It arrived hot and fast in all the major browsers all at once. Now that we're seeing a lot more usage, we're seeing people want more from grid. Michelle Barker lists hers wants (and I'll put my commentary after): Styling\u2026","rel":"","context":"In "Articles"","block_context":{"text":"Articles","link":"https:\/\/css-tricks.com\/category\/articles\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2018\/12\/grid-guide.png?fit=1200%2C600&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2018\/12\/grid-guide.png?fit=1200%2C600&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2018\/12\/grid-guide.png?fit=1200%2C600&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2018\/12\/grid-guide.png?fit=1200%2C600&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2018\/12\/grid-guide.png?fit=1200%2C600&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":299880,"url":"https:\/\/css-tricks.com\/firefox-71-first-out-of-the-gate-with-subgrid\/","url_meta":{"origin":389805,"position":2},"title":"Firefox 71: First Out of the Gate With Subgrid","author":"Chris Coyier","date":"December 5, 2019","format":false,"excerpt":"A great release from Firefox this week! See the whole roundup post from Chris Mills. I'm personally stoked to see clip-path: path(); go live, which we've been tracking as it's so clearly useful. We also get column-span: all; which is nice in case you're one of the few taking advantages\u2026","rel":"","context":"In "Links"","block_context":{"text":"Links","link":"https:\/\/css-tricks.com\/category\/links\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/12\/subgrid-markup.png?fit=1200%2C600&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/12\/subgrid-markup.png?fit=1200%2C600&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/12\/subgrid-markup.png?fit=1200%2C600&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/12\/subgrid-markup.png?fit=1200%2C600&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/12\/subgrid-markup.png?fit=1200%2C600&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":298572,"url":"https:\/\/css-tricks.com\/weekly-platform-news-web-apps-in-galaxy-store-tappable-stories-css-subgrid\/","url_meta":{"origin":389805,"position":3},"title":"Weekly Platform News: Web Apps in Galaxy Store, Tappable Stories, CSS Subgrid","author":"\u0160ime Vidas","date":"November 7, 2019","format":false,"excerpt":"In this week's roundup: Firefox gains locksmith-like powers, Samsung's Galaxy Store starts supporting Progressive Web Apps, CSS Subgrid is shipping in Firefox 70, and a new study confirms that users prefer to tap into content rather than scroll through it. Let's get into the news. Securely generated passwords in Firefox\u2026","rel":"","context":"In "Articles"","block_context":{"text":"Articles","link":"https:\/\/css-tricks.com\/category\/articles\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/11\/wpn-20191107.png?fit=1200%2C600&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/11\/wpn-20191107.png?fit=1200%2C600&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/11\/wpn-20191107.png?fit=1200%2C600&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/11\/wpn-20191107.png?fit=1200%2C600&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/11\/wpn-20191107.png?fit=1200%2C600&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":246148,"url":"https:\/\/css-tricks.com\/will-flattening-html-css-grids\/","url_meta":{"origin":389805,"position":4},"title":"Will we be flattening our HTML for CSS Grids?","author":"Chris Coyier","date":"October 5, 2016","format":false,"excerpt":"I was watching Rachel Andrew talk about CSS Grid Layout yesterday at An Event Apart. Grid is amazing and the day will soon come where it's a dominant web layout tool of choice. That day isn't here yet though, as no stable browser is shipping the latest version of the\u2026","rel":"","context":"In "Articles"","block_context":{"text":"Articles","link":"https:\/\/css-tricks.com\/category\/articles\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":281168,"url":"https:\/\/css-tricks.com\/why-we-need-css-subgrid\/","url_meta":{"origin":389805,"position":5},"title":"Why we need CSS subgrid","author":"Robin Rendle","date":"January 11, 2019","format":false,"excerpt":"I\u2019m a huge fan of CSS Grid and I use it on pretty much every project these days.\u00a0However, there\u2019s one part of it that makes things much more complicated than they really ought to be: the lack of subgrids. And in this post on the matter, Ken Bellows explains why\u2026","rel":"","context":"In "Links"","block_context":{"text":"Links","link":"https:\/\/css-tricks.com\/category\/links\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/01\/subgrid.png?fit=1200%2C600&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/01\/subgrid.png?fit=1200%2C600&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/01\/subgrid.png?fit=1200%2C600&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/01\/subgrid.png?fit=1200%2C600&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2019\/01\/subgrid.png?fit=1200%2C600&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/posts\/389805","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/users\/259791"}],"replies":[{"embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/comments?post=389805"}],"version-history":[{"count":9,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/posts\/389805\/revisions"}],"predecessor-version":[{"id":390107,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/posts\/389805\/revisions\/390107"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/media\/390055"}],"wp:attachment":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/media?parent=389805"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/categories?post=389805"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/tags?post=389805"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}