Skip to content

Pagination

Pagination components enable users to navigate through large sets of records by dividing content into discrete pages. They display page controls, a “Show N of Total records” indicator, and an optional page-size selector — all in a responsive layout that adapts between desktop and mobile.

Loading Code Block...

A pagination control showing page 1, 10 items per page, out of 100 total records.

Show 10 of 100 records
Loading Code Block...

The component supports two navigation layouts:

VariantDescription
defaultShows a sliding window of up to 5 page numbers around the current page
last-numberShows page 1, page N (last), and a ”…” dots menu for all pages in between
Loading Code Block...

Both variants include the same set of navigation buttons:

ButtonAction
« (double left chevron)Jump to first page
(single left chevron)Go to previous page
Page number buttonsDirect page navigation
(single right chevron)Go to next page
» (double right chevron)Jump to last page

All navigation buttons are disabled at their boundary — first/previous buttons are disabled on page 1, and next/last buttons are disabled on the final page.

  • All navigation buttons use semantic <button> elements with proper disabled attributes
  • Disabled buttons receive cursor-not-allowed styling and prevent keyboard/click interaction
  • Page-size selector is keyboard accessible (Tab to focus, Enter/Space to open, Arrow keys to navigate)
  • Active page button is visually distinguished with accent background and on-brand text colour
  • Focus states are maintained through keyboard navigation