HTML Articles

    Semantic markup, native browser APIs, accessibility best practices, and modern HTML elements.

    Optimizing LCP with the HTML fetchpriority attribute
    HTML7 min

    Optimizing LCP with the HTML fetchpriority attribute

    Not every image on a page deserves the same loading priority from the browser's default heuristics. Here's when to mark the hero image high, and when deprioritizing the rest helps LCP more.

    Editor: Paul Radford
    Jul 26, 2026
    frontend
    When and how to use the HTML search element
    HTML8 min

    When and how to use the HTML search element

    role='search' bolted onto a plain form is one more attribute developers reliably forget to add. The new <search> element makes that semantic landmark the default instead of an opt-in extra.

    Editor: Paul Radford
    Jul 2, 2026
    forms
    Building exclusive accordions natively with the HTML details name attribute
    HTML8 min

    Building exclusive accordions natively with the HTML details name attribute

    Accordions used to mean reaching for a JavaScript library just to track which panel was open. The details name attribute groups them like radio inputs, with zero click handlers required.

    Editor: Paul Radford
    Jul 2, 2026
    frontend
    The dialog Element: Native Modals Without JavaScript
    HTML7 min

    The dialog Element: Native Modals Without JavaScript

    Radix, Headless UI, and jQuery UI exist largely to paper over a missing browser primitive that finally shipped. <dialog> plus showModal() replaces most of that plumbing natively now.

    Editor: Paul Radford
    Jun 10, 2026
    formsfrontend
    The inert Attribute: Controlling Accessibility Exposure Without CSS Hacks
    HTML7 min

    The inert Attribute: Controlling Accessibility Exposure Without CSS Hacks

    aria-hidden alone doesn't stop keyboard focus, and tabindex='-1' has to be applied recursively to every focusable child by hand. inert replaces that whole stack with one HTML attribute.

    Editor: Paul Radford
    Jun 5, 2026
    advancedmodern
    Modern HTML Accessibility: Beyond the Basics in 2026
    HTML7 min

    Modern HTML Accessibility: Beyond the Basics in 2026

    Most teams have alt text, heading order, and form labels covered by now. What actually causes support tickets and lawsuits in 2026 is dynamic behavior nobody thought to audit.

    Editor: Paul Radford
    Jun 2, 2026
    ariafrontend
    Modern HTML Forms: What Developers Are Still Doing Wrong
    HTML7 min

    Modern HTML Forms: What Developers Are Still Doing Wrong

    The Constraint Validation API has handled required and type checks natively since around 2010, yet most production forms still duplicate it in custom JavaScript.

    Editor: Paul Radford
    May 17, 2026
    formsvalidation
    Native Popovers Without JavaScript: The Popover API in Depth
    HTML7 min

    Native Popovers Without JavaScript: The Popover API in Depth

    Popper.js and Floating UI existed largely to paper over a missing browser primitive. Here's what the popovertarget attribute replaces, and where you still need JavaScript.

    Editor: Paul Radford
    Apr 6, 2026
    frontendcomponents