ಪುಟ ವಿನ್ಯಾಸ
ಸಂಬಂಧಿತ ವಿಷಯಗಳ ಸರಣಿಯನ್ನು ಸೂಚಿಸಲು ಪುಟ ವಿನ್ಯಾಸವನ್ನು ತೋರಿಸಲು ದಾಖಲೆಗಳು ಮತ್ತು ಉದಾಹರಣೆಗಳು ಬಹು ಪುಟಗಳಲ್ಲಿ ಅಸ್ತಿತ್ವದಲ್ಲಿವೆ.
ಅವಲೋಕನ
ನಮ್ಮ ವಿನ್ಯಾಸಕ್ಕಾಗಿ ನಾವು ಸಂಪರ್ಕಿತ ಲಿಂಕ್ಗಳ ದೊಡ್ಡ ಬ್ಲಾಕ್ ಅನ್ನು ಬಳಸುತ್ತೇವೆ, ಲಿಂಕ್ಗಳನ್ನು ಮಿಸ್ ಮಾಡಲು ಕಷ್ಟವಾಗುತ್ತದೆ ಮತ್ತು ಸುಲಭವಾಗಿ ಸ್ಕೇಲೆಬಲ್ ಆಗುವಂತೆ ಮಾಡುತ್ತದೆ-ಎಲ್ಲವೂ ದೊಡ್ಡ ಹಿಟ್ ಪ್ರದೇಶಗಳನ್ನು ಒದಗಿಸುವಾಗ. ಪುಟ ವಿನ್ಯಾಸವನ್ನು ಪಟ್ಟಿ HTML ಅಂಶಗಳೊಂದಿಗೆ ನಿರ್ಮಿಸಲಾಗಿದೆ ಆದ್ದರಿಂದ ಸ್ಕ್ರೀನ್ ರೀಡರ್ಗಳು ಲಭ್ಯವಿರುವ ಲಿಂಕ್ಗಳ ಸಂಖ್ಯೆಯನ್ನು ಪ್ರಕಟಿಸಬಹುದು. <nav>
ಸ್ಕ್ರೀನ್ ರೀಡರ್ಗಳು ಮತ್ತು ಇತರ ಸಹಾಯಕ ತಂತ್ರಜ್ಞಾನಗಳಿಗೆ ನ್ಯಾವಿಗೇಷನ್ ವಿಭಾಗವೆಂದು ಗುರುತಿಸಲು ಸುತ್ತುವ ಅಂಶವನ್ನು ಬಳಸಿ .
ಹೆಚ್ಚುವರಿಯಾಗಿ, ಪುಟಗಳು ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ನ್ಯಾವಿಗೇಷನ್ ವಿಭಾಗವನ್ನು ಹೊಂದಿರುವುದರಿಂದ, ಅದರ ಉದ್ದೇಶವನ್ನು ಪ್ರತಿಬಿಂಬಿಸಲು ವಿವರಣಾತ್ಮಕವನ್ನು aria-label
ಒದಗಿಸುವುದು ಸೂಕ್ತವಾಗಿದೆ. <nav>
ಉದಾಹರಣೆಗೆ, ಹುಡುಕಾಟ ಫಲಿತಾಂಶಗಳ ಗುಂಪಿನ ನಡುವೆ ನ್ಯಾವಿಗೇಟ್ ಮಾಡಲು ವಿನ್ಯಾಸ ಘಟಕವನ್ನು ಬಳಸಿದರೆ, ಸೂಕ್ತವಾದ ಲೇಬಲ್ ಆಗಿರಬಹುದು aria-label="Search results pages"
.
<nav aria-label="Page navigation example">
<ul class="pagination">
<li class="page-item"><a class="page-link" href="#">Previous</a></li>
<li class="page-item"><a class="page-link" href="#">1</a></li>
<li class="page-item"><a class="page-link" href="#">2</a></li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
<li class="page-item"><a class="page-link" href="#">Next</a></li>
</ul>
</nav>
ಐಕಾನ್ಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಿ
ಕೆಲವು ವಿನ್ಯಾಸ ಲಿಂಕ್ಗಳಿಗಾಗಿ ಪಠ್ಯದ ಸ್ಥಳದಲ್ಲಿ ಐಕಾನ್ ಅಥವಾ ಚಿಹ್ನೆಯನ್ನು ಬಳಸಲು ನೋಡುತ್ತಿರುವಿರಾ? aria
ಗುಣಲಕ್ಷಣಗಳೊಂದಿಗೆ ಸರಿಯಾದ ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಬೆಂಬಲವನ್ನು ಒದಗಿಸಲು ಮರೆಯದಿರಿ .
<nav aria-label="Page navigation example">
<ul class="pagination">
<li class="page-item">
<a class="page-link" href="#" aria-label="Previous">
<span aria-hidden="true">«</span>
</a>
</li>
<li class="page-item"><a class="page-link" href="#">1</a></li>
<li class="page-item"><a class="page-link" href="#">2</a></li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#" aria-label="Next">
<span aria-hidden="true">»</span>
</a>
</li>
</ul>
</nav>
ಅಂಗವಿಕಲ ಮತ್ತು ಸಕ್ರಿಯ ರಾಜ್ಯಗಳು
ವಿವಿಧ ಸಂದರ್ಭಗಳಲ್ಲಿ ವಿನ್ಯಾಸ ಲಿಂಕ್ಗಳನ್ನು ಗ್ರಾಹಕೀಯಗೊಳಿಸಬಹುದಾಗಿದೆ. ಕ್ಲಿಕ್ ಮಾಡಲಾಗುವುದಿಲ್ಲ ಮತ್ತು ಪ್ರಸ್ತುತ ಪುಟವನ್ನು ಸೂಚಿಸಲು .disabled
ಕಾಣುವ ಲಿಂಕ್ಗಳಿಗಾಗಿ ಬಳಸಿ ..active
ವರ್ಗವು .disabled
s ನ ಲಿಂಕ್ pointer-events: none
ಕಾರ್ಯವನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿರುವಾಗ<a>
, ಆ CSS ಆಸ್ತಿಯನ್ನು ಇನ್ನೂ ಪ್ರಮಾಣೀಕರಿಸಲಾಗಿಲ್ಲ ಮತ್ತು ಕೀಬೋರ್ಡ್ ನ್ಯಾವಿಗೇಶನ್ಗೆ ಕಾರಣವಾಗುವುದಿಲ್ಲ. ಅಂತೆಯೇ, ನೀವು ಯಾವಾಗಲೂ tabindex="-1"
ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ ಲಿಂಕ್ಗಳನ್ನು ಸೇರಿಸಬೇಕು ಮತ್ತು ಅವುಗಳ ಕಾರ್ಯವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು ಕಸ್ಟಮ್ JavaScript ಅನ್ನು ಬಳಸಬೇಕು.
<nav aria-label="...">
<ul class="pagination">
<li class="page-item disabled">
<a class="page-link">Previous</a>
</li>
<li class="page-item"><a class="page-link" href="#">1</a></li>
<li class="page-item active" aria-current="page">
<a class="page-link" href="#">2</a>
</li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#">Next</a>
</li>
</ul>
</nav>
ನೀವು ಐಚ್ಛಿಕವಾಗಿ ಗಾಗಿ ಸಕ್ರಿಯ ಅಥವಾ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾದ ಆಂಕರ್ಗಳನ್ನು ಸ್ವ್ಯಾಪ್ ಮಾಡಬಹುದು ಅಥವಾ <span>
ಹಿಂದಿನ/ಮುಂದಿನ ಬಾಣಗಳ ಸಂದರ್ಭದಲ್ಲಿ ಆಂಕರ್ ಅನ್ನು ಬಿಟ್ಟುಬಿಡಬಹುದು, ಕ್ಲಿಕ್ ಕಾರ್ಯವನ್ನು ತೆಗೆದುಹಾಕಲು ಮತ್ತು ಉದ್ದೇಶಿತ ಶೈಲಿಗಳನ್ನು ಉಳಿಸಿಕೊಳ್ಳುವಾಗ ಕೀಬೋರ್ಡ್ ಫೋಕಸ್ ಅನ್ನು ತಡೆಯಲು.
<nav aria-label="...">
<ul class="pagination">
<li class="page-item disabled">
<span class="page-link">Previous</span>
</li>
<li class="page-item"><a class="page-link" href="#">1</a></li>
<li class="page-item active" aria-current="page">
<span class="page-link">2</span>
</li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#">Next</a>
</li>
</ul>
</nav>
ಗಾತ್ರ
ದೊಡ್ಡದಾದ ಅಥವಾ ಚಿಕ್ಕದಾದ ವಿನ್ಯಾಸವನ್ನು ಬಯಸುತ್ತೀರಾ? ಸೇರಿಸಿ .pagination-lg
ಅಥವಾ .pagination-sm
ಹೆಚ್ಚುವರಿ ಗಾತ್ರಗಳಿಗೆ.
<nav aria-label="...">
<ul class="pagination pagination-lg">
<li class="page-item active" aria-current="page">
<span class="page-link">1</span>
</li>
<li class="page-item"><a class="page-link" href="#">2</a></li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
</ul>
</nav>
<nav aria-label="...">
<ul class="pagination pagination-sm">
<li class="page-item active" aria-current="page">
<span class="page-link">1</span>
</li>
<li class="page-item"><a class="page-link" href="#">2</a></li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
</ul>
</nav>
ಜೋಡಣೆ
ಫ್ಲೆಕ್ಸ್ಬಾಕ್ಸ್ ಉಪಯುಕ್ತತೆಗಳೊಂದಿಗೆ ವಿನ್ಯಾಸ ಘಟಕಗಳ ಜೋಡಣೆಯನ್ನು ಬದಲಾಯಿಸಿ . ಉದಾಹರಣೆಗೆ, ಇದರೊಂದಿಗೆ .justify-content-center
:
<nav aria-label="Page navigation example">
<ul class="pagination justify-content-center">
<li class="page-item disabled">
<a class="page-link">Previous</a>
</li>
<li class="page-item"><a class="page-link" href="#">1</a></li>
<li class="page-item"><a class="page-link" href="#">2</a></li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#">Next</a>
</li>
</ul>
</nav>
ಅಥವಾ ಇದರೊಂದಿಗೆ .justify-content-end
:
<nav aria-label="Page navigation example">
<ul class="pagination justify-content-end">
<li class="page-item disabled">
<a class="page-link">Previous</a>
</li>
<li class="page-item"><a class="page-link" href="#">1</a></li>
<li class="page-item"><a class="page-link" href="#">2</a></li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#">Next</a>
</li>
</ul>
</nav>
CSS
ಅಸ್ಥಿರ
v5.2.0 ರಲ್ಲಿ ಸೇರಿಸಲಾಗಿದೆಬೂಟ್ಸ್ಟ್ರ್ಯಾಪ್ನ ವಿಕಸನಗೊಳ್ಳುತ್ತಿರುವ CSS ಅಸ್ಥಿರ ವಿಧಾನದ ಭಾಗವಾಗಿ, ಪುಟೀಕರಣವು ಈಗ .pagination
ವರ್ಧಿತ ನೈಜ-ಸಮಯದ ಗ್ರಾಹಕೀಕರಣಕ್ಕಾಗಿ ಸ್ಥಳೀಯ CSS ವೇರಿಯೇಬಲ್ಗಳನ್ನು ಬಳಸುತ್ತದೆ. CSS ವೇರಿಯೇಬಲ್ಗಳ ಮೌಲ್ಯಗಳನ್ನು Sass ಮೂಲಕ ಹೊಂದಿಸಲಾಗಿದೆ, ಆದ್ದರಿಂದ Sass ಗ್ರಾಹಕೀಕರಣವು ಇನ್ನೂ ಬೆಂಬಲಿತವಾಗಿದೆ.
--#{$prefix}pagination-padding-x: #{$pagination-padding-x};
--#{$prefix}pagination-padding-y: #{$pagination-padding-y};
@include rfs($pagination-font-size, --#{$prefix}pagination-font-size);
--#{$prefix}pagination-color: #{$pagination-color};
--#{$prefix}pagination-bg: #{$pagination-bg};
--#{$prefix}pagination-border-width: #{$pagination-border-width};
--#{$prefix}pagination-border-color: #{$pagination-border-color};
--#{$prefix}pagination-border-radius: #{$pagination-border-radius};
--#{$prefix}pagination-hover-color: #{$pagination-hover-color};
--#{$prefix}pagination-hover-bg: #{$pagination-hover-bg};
--#{$prefix}pagination-hover-border-color: #{$pagination-hover-border-color};
--#{$prefix}pagination-focus-color: #{$pagination-focus-color};
--#{$prefix}pagination-focus-bg: #{$pagination-focus-bg};
--#{$prefix}pagination-focus-box-shadow: #{$pagination-focus-box-shadow};
--#{$prefix}pagination-active-color: #{$pagination-active-color};
--#{$prefix}pagination-active-bg: #{$pagination-active-bg};
--#{$prefix}pagination-active-border-color: #{$pagination-active-border-color};
--#{$prefix}pagination-disabled-color: #{$pagination-disabled-color};
--#{$prefix}pagination-disabled-bg: #{$pagination-disabled-bg};
--#{$prefix}pagination-disabled-border-color: #{$pagination-disabled-border-color};
ಸಾಸ್ ಅಸ್ಥಿರ
$pagination-padding-y: .375rem;
$pagination-padding-x: .75rem;
$pagination-padding-y-sm: .25rem;
$pagination-padding-x-sm: .5rem;
$pagination-padding-y-lg: .75rem;
$pagination-padding-x-lg: 1.5rem;
$pagination-font-size: $font-size-base;
$pagination-color: var(--#{$prefix}link-color);
$pagination-bg: $white;
$pagination-border-radius: $border-radius;
$pagination-border-width: $border-width;
$pagination-margin-start: ($pagination-border-width * -1);
$pagination-border-color: $gray-300;
$pagination-focus-color: var(--#{$prefix}link-hover-color);
$pagination-focus-bg: $gray-200;
$pagination-focus-box-shadow: $input-btn-focus-box-shadow;
$pagination-focus-outline: 0;
$pagination-hover-color: var(--#{$prefix}link-hover-color);
$pagination-hover-bg: $gray-200;
$pagination-hover-border-color: $gray-300;
$pagination-active-color: $component-active-color;
$pagination-active-bg: $component-active-bg;
$pagination-active-border-color: $pagination-active-bg;
$pagination-disabled-color: $gray-600;
$pagination-disabled-bg: $white;
$pagination-disabled-border-color: $gray-300;
$pagination-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
$pagination-border-radius-sm: $border-radius-sm;
$pagination-border-radius-lg: $border-radius-lg;
ಸಾಸ್ ಮಿಕ್ಸಿನ್ಸ್
@mixin pagination-size($padding-y, $padding-x, $font-size, $border-radius) {
--#{$prefix}pagination-padding-x: #{$padding-x};
--#{$prefix}pagination-padding-y: #{$padding-y};
@include rfs($font-size, --#{$prefix}pagination-font-size);
--#{$prefix}pagination-border-radius: #{$border-radius};
}