About
Good markup for paginated results
Alternatives
Accessibility
This is solid markup and tested
Requirements
Issues
Examples
You can safely remove the first, previous, next and last pagination items if not required.
<nav aria-label="Pagination, currently on page 3">
<ol class="c-pgn">
<li class="c-pgn__item c-pgn__item--previous-group">
<a href="#first" class="c-pgn__link">
<span class="vh">First set of pages</span>
<svg class="c-icon c-icon--pgn" aria-hidden="true" focusable="false">
<use xlink:href="/assets/icons/symbols.svg#icon--first"></use>
</svg>
</a>
</li>
<li class="c-pgn__item c-pgn__item--previous-page">
<a href="#prev" class="c-pgn__link">
<span class="vh">Previous page</span>
<svg class="c-icon c-icon--pgn" aria-hidden="true" focusable="false">
<use xlink:href="/assets/icons/symbols.svg#icon--previous"></use>
</svg>
</a>
</li>
<li class="c-pgn__item ">
<a href="#page1" class="c-pgn__link" >
<span class="vh">Page </span>1
</a>
</li>
<li class="c-pgn__item ">
<a href="#page2" class="c-pgn__link" >
<span class="vh">Page </span>2
</a>
</li>
<li class="c-pgn__item c-pgn__item--is-active ">
<a href="#page3" class="c-pgn__link" aria-current="page" >
<span class="vh">Page </span>3
</a>
</li>
<li class="c-pgn__item ">
<a href="#page4" class="c-pgn__link" >
<span class="vh">Page </span>4
</a>
</li>
<li class="c-pgn__item ">
<a href="#page5" class="c-pgn__link" >
<span class="vh">Page </span>5
</a>
</li>
<li class="c-pgn__item c-pgn__item--next-page">
<a href="#next" class="c-pgn__link">
<span class="vh">Next page </span>
<svg class="c-icon c-icon--pgn" aria-hidden="true" focusable="false">
<use xlink:href="/assets/icons/symbols.svg#icon--next"></use>
</svg>
</a>
</li>
<li class="c-pgn__item c-pgn__item--next-group">
<a href="#last" class="c-pgn__link">
<span class="vh">Last set of pages</span>
<svg class="c-icon c-icon--pgn" aria-hidden="true" focusable="false">
<use xlink:href="/assets/icons/symbols.svg#icon--last"></use>
</svg>
</a>
</li>
</ol>
</nav>JS - Parameters
References / inspiration
Used on Brandon Trust search results (2018)