CSS & HTML Tips,
    Made Simple

    Practical web development tips, snippets, and template tricks you can use today.

    Modern HTML Forms: Native Validation, Styling & Autofill
    HTML8 min

    Modern HTML Forms: Native Validation, Styling & Autofill

    A practical map of what the browser already handles in forms: validation, state styling, sizing, focus, and autofill, with links to the deep dives.

    Editor: Paul Radford
    Oct 31, 2026
    html formsconstraint validationcss formsautocompleteform styling
    How to animate elements along an SVG path using CSS offset-path
    CSS8 min

    How to animate elements along an SVG path using CSS offset-path

    Explains how to use the CSS Motion Path API to move elements along complex vector paths without JavaScript. Covers responsive path scaling and controlling element rotation along the curve.

    Editor: Paul Radford
    Oct 11, 2026
    animationfrontend
    The difference between image loading lazy and decoding async in HTML
    HTML7 min

    The difference between image loading lazy and decoding async in HTML

    Clarifies the distinct performance roles of the loading and decoding attributes on HTML images. Explains when to defer network requests versus when to defer main-thread image decoding.

    Editor: Paul Radford
    Sep 24, 2026
    frontend
    Fixing anchor link offset behind sticky headers with CSS scroll-padding
    CSS8 min

    Fixing anchor link offset behind sticky headers with CSS scroll-padding

    Explains how to use scroll-padding and scroll-margin to prevent anchor links from scrolling underneath fixed or sticky headers. Replaces old JavaScript offset calculations with native CSS.

    Editor: Paul Radford
    Sep 16, 2026
    layoutfrontend
    How to use Declarative Shadow DOM for server-rendered web components
    HTML9 min

    How to use Declarative Shadow DOM for server-rendered web components

    Declarative Shadow DOM allows developers to attach a shadow root to a custom element using only HTML, bypassing the need for client-side JavaScript execution. This article explains how to use the shadowrootmode attribute on the <template> element to enable server-side rendering for web components. The key takeaway is how this approach eliminates layout shifts and flashes of unstyled content in component-heavy applications.

    Editor: Paul Radford
    Sep 7, 2026
    frontend
    Modern CSS Layout: Grid, Container Queries & Positioning
    CSS11 min

    Modern CSS Layout: Grid, Container Queries & Positioning

    A guide to the CSS layout features that matter now: container queries, subgrid, masonry, anchor positioning, and logical properties.

    Editor: Paul Radford
    Aug 23, 2026
    layoutcontainer-queriesanchor-positioninglogical-properties
    CSS Animation & Motion in 2026
    CSS9 min

    CSS Animation & Motion in 2026

    A guide to the four CSS-native techniques replacing JavaScript animation libraries: view transitions, scroll-driven animation, @starting-style, and @property.

    Editor: Paul Radford
    Aug 21, 2026
    css animationview transitions apiscroll-driven animationsstarting-stylecss propertyweb motion
    Modern CSS Selectors, Cascade & Conditional Logic in 2026
    CSS12 min

    Modern CSS Selectors, Cascade & Conditional Logic in 2026

    A working map of :has(), cascade layers, @scope and @when/@else, and how they change the way you write CSS in 2026.

    Editor: Paul Radford
    Aug 21, 2026
    selectorscascade layershas selectorscopeconditional css