--- title: Pagination summary: Pagination splits a long list or table into pages and lets the user move between them, with sizes, icons and disabled states. description: Navigate through multi-page content with pagination controls. related: [/ui/components/table] source: core/scss/ui/_pagination.scss css-vars: pagination classnames: component: - class: pagination desc: Container element, an unordered list part: - class: page-item desc: One entry in the pager - class: page-link desc: The clickable element inside an entry - class: page-item-title desc: Page name, for a pager that names pages instead of numbering them - class: page-item-subtitle desc: Small uppercase label above the title style: - class: pagination-outline desc: Outlined entries instead of filled ones - class: pagination-circle desc: Round entries size: - class: pagination-sm desc: Small size - class: pagination-lg desc: Large size --- import Example from '@components/Example.astro'; import Pagination from '@ui/Pagination.astro'; ## Basic example The basic pagination has page numbers with previous and next icon links: ## With first and last links With many pages, add first and last links to jump to either end. ## Offset When there are too many pages to list, show only a few around the current one. ## Button with text Text buttons give the previous and next links a label instead of an icon. ## Outline version The `.pagination-outline` class draws the items with a border and no fill. ## Circle version The `.pagination-circle` class makes each item round. It combines with `.pagination-outline`. ## Pager with page names For prose - documentation, a blog, a wizard - name the pages instead of numbering them. Put `page-item-subtitle` above the title for the direction, and `page-item-title` for the name of the target page. ## Accessibility - Wrap the list in `