No notes defined.
<nav class="pager" role="navigation" aria-labelledby="pagination-heading">
<h4 id="pagination-heading" class="visually-hidden">Pagination</h4>
<ul class="pager__items js-pager__items">
<li class="pager__item pager__item--first">
<a href="?page=0" title="Go to first page">
<span class="">First</span>
</a>
</li>
<li class="pager__item pager__item--previous">
<a href="?page=9" title="Go to previous page" rel="prev">
<span class="">Previous</span>
</a>
</li>
<li class="pager__item pager__item--ellipsis" role="presentation">…</li>
<li class="pager__item">
<a href="?page=8" title="Go to page 9">
<span class="visually-hidden">
Page
</span>9</a>
</li>
<li class="pager__item">
<a href="?page=9" title="Go to page 10">
<span class="visually-hidden">
Page
</span>10</a>
</li>
<li class="pager__item is-active">
<a href="?page=10" title="Current page">
<span class="visually-hidden">
Current page
</span>11</a>
</li>
<li class="pager__item">
<a href="?page=11" title="Go to page 12">
<span class="visually-hidden">
Page
</span>12</a>
</li>
<li class="pager__item">
<a href="?page=12" title="Go to page 13">
<span class="visually-hidden">
Page
</span>13</a>
</li>
<li class="pager__item pager__item--ellipsis" role="presentation">…</li>
<li class="pager__item pager__item--next">
<a href="?page=11" title="Go to next page" rel="next">
<span class="visually-hidden">Next page</span>
<span aria-hidden="true">Next</span>
</a>
</li>
<li class="pager__item pager__item--last">
<a href="?page=12" title="Go to last page">
<span class="visually-hidden">Last page</span>
<span aria-hidden="true">Last</span>
</a>
</li>
</ul>
</nav>
<nav class="pager" role="navigation" aria-labelledby="pagination-heading">
<h4 id="pagination-heading" class="visually-hidden">Pagination</h4>
<ul class="pager__items js-pager__items">
<li class="pager__item pager__item--first">
<a href="?page=0" title="Go to first page">
<span class="">First</span>
</a>
</li>
<li class="pager__item pager__item--previous">
<a href="?page=9" title="Go to previous page" rel="prev">
<span class="">Previous</span>
</a>
</li>
<li class="pager__item pager__item--ellipsis" role="presentation">…</li>
<li class="pager__item">
<a href="?page=8" title="Go to page 9">
<span class="visually-hidden">
Page
</span>9</a>
</li>
<li class="pager__item">
<a href="?page=9" title="Go to page 10">
<span class="visually-hidden">
Page
</span>10</a>
</li>
<li class="pager__item is-active">
<a href="?page=10" title="Current page">
<span class="visually-hidden">
Current page
</span>11</a>
</li>
<li class="pager__item">
<a href="?page=11" title="Go to page 12">
<span class="visually-hidden">
Page
</span>12</a>
</li>
<li class="pager__item">
<a href="?page=12" title="Go to page 13">
<span class="visually-hidden">
Page
</span>13</a>
</li>
<li class="pager__item pager__item--ellipsis" role="presentation">…</li>
<li class="pager__item pager__item--next">
<a href="?page=11" title="Go to next page" rel="next">
<span class="visually-hidden">Next page</span>
<span aria-hidden="true">Next</span>
</a>
</li>
<li class="pager__item pager__item--last">
<a href="?page=12" title="Go to last page">
<span class="visually-hidden">Last page</span>
<span aria-hidden="true">Last</span>
</a>
</li>
</ul>
</nav>
$pager__fullBreakpoint: 40rem;
$pager__itemRadius: $border-radius-md;
@mixin pagination__root {
margin: $spacing-4xl 0;
@include typescale('lg');
@media (min-width: $pager__fullBreakpoint) {
@include typescale('md');
}
}
@mixin pagination__list {
position: relative;
display: flex;
flex-wrap: wrap;
gap: $spacing-2xs;
}
@mixin pagination__item {
background: $offwhite;
border-radius: $pager__itemRadius;
}
@mixin pagination__item--hideshow {
display: none;
@media (min-width: $pager__fullBreakpoint) {
display: block;
}
}
@mixin pagination__item--navigation {
//min-width: 4em;
> a {
background: white;
&:hover,
&:focus {
box-shadow: 0 0 0.2em rgba(black, 0.1), 0 0 1em rgba(black, 0.2);
}
}
}
@mixin pagination__item--active {
> a, > span {
background: $secondary;
color: choose-contrast-color($secondary);
cursor: default;
text-decoration: none;
&:hover,
&:focus {
box-shadow: none;
}
}
}
@mixin pagination__link {
min-width: 1em;
text-align: center;
padding: $spacing-2xs $spacing-sm;
border-radius: $pager__itemRadius;
box-sizing: border-box;
&:hover,
&:focus {
text-decoration: none;
box-shadow: 0 0 0.2em rgba(black, 0.1), 0 0 1em rgba(black, 0.2);
}
}
@mixin pagination__link--active {
&:hover,
&:focus {
box-shadow: none;
}
}
@mixin pagination__ellipsis {
background: $offwhite;
color: $grey;
border-radius: $pager__itemRadius;
min-width: 1em;
text-align: center;
padding: $spacing-2xs $spacing-4xs;
@media (min-width: $pager__fullBreakpoint) {
padding: $spacing-2xs $spacing-xs;
}
}
@mixin pagination__link--navigation {
}
// --
.pager {
@include pagination__root;
&__items {
@include pagination__list;
}
&__item {
@include pagination__item;
}
&__item:where(:not(.pager__item--ellipsis):not(.pager__item--first):not(.pager__item--previous):not(.pager__item.is-active):not(.pager__item--next):not(.pager__item--last)) {
@include pagination__item--hideshow;
}
a {
display: block;
border: 0.1rem solid transparent;
&:hover,
&:focus {
text-decoration: underline;
}
}
a {
@include pagination__link;
}
&__item--ellipsis {
@include pagination__ellipsis;
}
.is-active {
@include pagination__item--active;
}
&__item--first,
&__item--last,
&__item--next,
&__item--previous {
@include pagination__item--navigation;
a {
@include pagination__link--navigation;
}
}
&__item--next,
&__item--previous {
a {
background: $primary;
color: white;
}
}
&__item--first,
&__item--last {
a {
border: 0.1rem solid $primary;
}
}
}