Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Animated Links Footer Block for React

A link footer for a project planner: three columns of six links under ruled headings, each link sliding an arrow in from its start on hover and focus, and a foot band with the brand and legal links.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

A link footer for React with Base UI, where the links answer your pointer. A nav labelled Footer holds three columns (Product, Learn, Company) of six links, each column headed by its title over a hairline. Hover a link or reach it with the keyboard and an arrow slides in from the start of the line while the label moves along to make room; leave it and both settle back. A foot band under a rule with + marks carries the wordmark and one sentence at the start, and the policies and copyright at the end. The page's rails and top rule come from the Guides spine. It's built from Guides, plain links and your theme's tokens, and the motion is CSS only: no JavaScript.

FAQ

How does the arrow animation work?

Each link is a group that holds its label and an arrow icon. At rest the arrow is invisible and parked a little before the line's start; on hover or keyboard focus its position and opacity transition, and the label's start padding grows by the arrow's width. Everything is a CSS transition on logical properties (start, ps), so in a right-to-left page the arrow comes in from the right and points the other way.

What happens with reduced motion?

Nothing slides. With the reduced-motion setting on, the label stays put and the arrow sits after it, hidden at rest and shown on hover or focus without a transition. The colour change on the link still happens, so the feedback stays visible.

What about touch screens?

A tap follows the link, so the arrow shows for the moment before the page changes on a touch device. Hover is only an extra: every link is readable and the right size to tap without it, with a row about 36 pixels tall.

How do screen readers move through it?

The block is a footer element, the page's content-info landmark when placed outside main. The columns sit in a nav labelled Footer, each with a small h2 over a list. The arrow is decorative and hidden from assistive technology, so a link is read as its label alone. The policy links are a list named Legal.

How does it fit on a phone?

Below md the columns sit two across, with the third spanning the full width, and the foot band stacks: the wordmark and sentence, then the policies, then the copyright. From md the three columns sit side by side. Nothing scrolls sideways at 320 pixels.

  • Pro

    The classic link-column footer for an email API: a brand column with the wordmark, one sentence and four social links, four groups of links behind a split divider, and a legal band with the copyright and the policy links.

  • Pro

    A brandless link directory: six groups of five links as cells on shared hairlines, three across by two down, with a legal band under the grid.

  • Pro

    A product footer for a scheduling tool: a lean brand row, three link groups as separate cells whose first link carries a one-line description and a badge, and a legal band.

  • Pro

    An even two-column footer: the wordmark, description, social icons and legal line behind a divider from a numbered, two-column list of eight links.

  • Pro

    Mega Footer

    Link grids

    A mega footer for a cloud platform: a brand band, eight link groups with icons in two ruled bands of four on one desktop screen, an accordion on phones, and a legal band.

  • Pro

    Sitemap Tree Footer

    Sitemaps and trails

    A sitemap footer drawn as three trees: nested lists with hairline connectors, a root link for each section, pages indented under it and some with their own children.