diff --git a/scss/_pagination.scss b/scss/_pagination.scss index 7de7a280cb..a9b13cbefd 100644 --- a/scss/_pagination.scss +++ b/scss/_pagination.scss @@ -1,10 +1,12 @@ .pagination { // scss-docs-start pagination-css-vars --#{$prefix}pagination-padding-x: #{$pagination-padding-x}; + --#{$prefix}pagination-label-padding-x: #{$pagination-label-padding-x}; // Boosted mod --#{$prefix}pagination-padding-y: #{$pagination-padding-y}; - --#{$prefix}pagination-padding-end: #{$pagination-padding-end}; // Boosted mod --#{$prefix}pagination-margin-y: #{$pagination-margin-y}; // Boosted mod + --#{$prefix}pagination-gap: #{$pagination-gap}; // Boosted mod --#{$prefix}pagination-margin-x-first-last: #{$pagination-margin-x-first-last}; // Boosted mod + --#{$prefix}pagination-item-max-width: #{$pagination-item-max-width}; // Boosted mod @include rfs($pagination-font-size, --#{$prefix}pagination-font-size); --#{$prefix}pagination-font-weight: #{$font-weight-bold}; // Boosted mod --#{$prefix}pagination-color: #{$pagination-color}; @@ -28,6 +30,7 @@ --#{$prefix}pagination-disabled-bg: #{$pagination-disabled-bg}; --#{$prefix}pagination-disabled-border-color: #{$pagination-disabled-border-color}; --#{$prefix}pagination-icon: #{$pagination-icon}; // Boosted mod + --#{$prefix}pagination-icon-min-width: #{$pagination-icon-min-width}; // Boosted mod --#{$prefix}pagination-icon-size: #{$pagination-icon-size}; // Boosted mod --#{$prefix}pagination-icon-width: #{$pagination-icon-width}; // Boosted mod --#{$prefix}pagination-icon-height: #{$pagination-icon-height}; // Boosted mod @@ -44,6 +47,7 @@ position: relative; box-sizing: content-box; // Boosted mod display: flex; // Boosted mod + gap: var(--#{$prefix}pagination-gap); // Boosted mod align-items: center; // Boosted mod justify-content: center; // Boosted mod padding: var(--#{$prefix}pagination-padding-y) var(--#{$prefix}pagination-padding-x); @@ -57,6 +61,7 @@ // Boosted mod: embed icon as mask-image @include button-icon( var(--#{$prefix}pagination-icon), + var(--#{$prefix}pagination-icon-min-width), var(--#{$prefix}pagination-icon-size), $size: var(--#{$prefix}pagination-icon-width) var(--#{$prefix}pagination-icon-height) , $selector: ".page-item:first-child .page-link, .page-item:last-child .page-link", @@ -146,13 +151,16 @@ } } + &:first-child .page-link, + &:last-child .page-link { + &:not([title]) { + --#{$prefix}pagination-padding-x: var(--#{$prefix}pagination-label-padding-x); + } + } + &:first-child .page-link { margin-right: var(--#{$prefix}pagination-margin-x-first-last); - &:not(:empty) { - padding-right: var(--#{$prefix}pagination-padding-end); - } - &::before { /* rtl:raw: transform: scaleX(-1); @@ -161,10 +169,6 @@ } &:last-child .page-link { - &:not(:empty) { - padding-left: var(--#{$prefix}pagination-padding-end); - } - &::before { order: 1; @@ -177,6 +181,10 @@ margin-left: var(--#{$prefix}pagination-margin-x-first-last); } + &:not(:first-child):not(:last-child) .page-link { + max-width: var(--#{$prefix}pagination-item-max-width); + } + @include media-breakpoint-down(sm) { @include pagination-max-items(4); } diff --git a/scss/_variables.scss b/scss/_variables.scss index 09aa0961c1..dabbde6e24 100644 --- a/scss/_variables.scss +++ b/scss/_variables.scss @@ -1639,8 +1639,9 @@ $dropdown-dark-header-color: $white !default; // Boosted mod // Pagination // scss-docs-start pagination-variables -$pagination-padding-y: null !default; // Boosted mod: instead of `.375rem` -$pagination-padding-x: null !default; // Boosted mod: instead of `.75rem` +$pagination-padding-y: .5625rem !default; // Boosted mod: instead of `null` +$pagination-padding-x: .8125rem !default; // Boosted mod: instead of `null` +$pagination-label-padding-x: 1.125rem !default; // Boosted mod // Boosted mod: no $pagination-padding-y-sm // Boosted mod: no $pagination-padding-x-sm // Boosted mod: no $pagination-padding-y-lg @@ -1683,15 +1684,21 @@ $pagination-transition: $transition-focus !default; // Boosted mod: // Boosted mod: no $pagination-border-radius-lg // Boosted mod -$pagination-padding-end: 1.125rem !default; $pagination-icon: var(--#{$prefix}chevron-icon) !default; -$pagination-icon-size: subtract($spacer * 2, calc(var(--#{$prefix}border-width) * 2)) !default; // stylelint-disable-line function-disallowed-list +$pagination-icon-min-width: .625rem !default; +$pagination-icon-size: 1.125rem !default; $pagination-icon-width: add(.5rem, 1px) !default; $pagination-icon-height: subtract(1rem, 1px) !default; +$pagination-gap: 5px !default; $pagination-active-item-bg: $supporting-orange !default; $pagination-active-item-color: $black !default; $pagination-active-item-border: $pagination-active-item-bg !default; + +$pagination-item-max-width: $spacer * .5 !default; +// fusv-disable +$pagination-padding-end: 1.125rem !default; // Deprecated in Boosted 5.3.2 for responsive pagination +// fusv-enable // End mod // scss-docs-end pagination-variables diff --git a/site/content/docs/5.3/components/pagination.md b/site/content/docs/5.3/components/pagination.md index cef9aa4d48..d57f662555 100644 --- a/site/content/docs/5.3/components/pagination.md +++ b/site/content/docs/5.3/components/pagination.md @@ -30,8 +30,8 @@ Looking to use an icon or symbol in place of text for some pagination links? Be {{< example >}} {{< /example >}} @@ -139,7 +139,7 @@ To avoid pagination wrapping or overflowing, we limit the number or pagination i
--bs-pagination-padding-end
$pagination-padding-end
--bs-local-nav-hover-bg
--bs-local-nav-hover-color
--bs-local-nav-padding-y
--bs-pagination-gap
--bs-pagination-icon-min-width
--bs-pagination-item-max-width
--bs-pagination-label-padding-x
$local-nav-padding-y
$mark-bg-dark
$mark-color-dark
$pagination-gap
$pagination-icon-min-width
$pagination-item-max-width
$pagination-label-padding-x