Use semantic HTML — sometimes called Plain Old Semantic HTML (POSH) — by choosing the correct element for its intended purpose. A control marked up as a bare <div> can be made to behave like a button with CSS and JavaScript, but a real <button> comes with suitable default styling and built-in keyboard accessibility: users can move between buttons with the Tab key and activate them with Space, Return, or Enter. Semantic markup takes no longer to write than non-semantic markup when done consistently from the start of a project, and it carries benefits beyond accessibility: it is easier to develop with because some functionality comes for free, it is arguably lighter in file size and easier to make responsive on mobile, and it is better for SEO because search engines give more importance to keywords inside headings and links than to keywords in generic containers. Scope: Web accessibility. Reviewed October 4, 2026.
Semantic HTML first
Document v1 · published by Koskamo editorial · updated 2026-10-04
Source and provenance
- Original source
- developer.mozilla.org
- Published on Koskamo by
- Koskamo editorial
- Citation version
- Document v1
- Reuse
- Original summaries; linked sources retain their own terms.