الفرق بين المراجعتين ل"Bootstrap/pagination"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
ط (استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}')
 
سطر 22: سطر 22:
 
== استخدام الأيقونات في شريط التصفّح ==
 
== استخدام الأيقونات في شريط التصفّح ==
  
تأكّد عند استخدام أيقونات أو رموز بدلًا من المحتوى النصيّ في بعضٍ من روابط التصفّح من توفير الدعم لقارئات الشاشة والتقنيّات المساعدة باستخدام الخاصيّات <code>aria-*‎</code> والأداة <code>‎.sr-only</code>.
+
تأكّد عند استخدام أيقونات أو رموز بدلًا من المحتوى النصيّ في بعضٍ من روابط التصفّح من توفير الدعم لقارئات الشاشة والتقنيّات المساعدة باستخدام الخاصيّات <code>aria-*‎</code>.
  
 
<syntaxhighlight lang="html">
 
<syntaxhighlight lang="html">
سطر 28: سطر 28:
 
   <ul class="pagination">
 
   <ul class="pagination">
 
     <li class="page-item">
 
     <li class="page-item">
       <a class="page-link" href="#" aria-label="السابق">
+
       <a class="page-link" href="#" aria-label="Previous">
 
         <span aria-hidden="true">&laquo;</span>
 
         <span aria-hidden="true">&laquo;</span>
        <span class="sr-only">السابق</span>
 
 
       </a>
 
       </a>
 
     </li>
 
     </li>
سطر 37: سطر 36:
 
     <li class="page-item"><a class="page-link" href="#">3</a></li>
 
     <li class="page-item"><a class="page-link" href="#">3</a></li>
 
     <li class="page-item">
 
     <li class="page-item">
       <a class="page-link" href="#" aria-label="التالي">
+
       <a class="page-link" href="#" aria-label="Next">
 
         <span aria-hidden="true">&raquo;</span>
 
         <span aria-hidden="true">&raquo;</span>
        <span class="sr-only">التالي</span>
 
 
       </a>
 
       </a>
 
     </li>
 
     </li>
سطر 99: سطر 97:
 
<nav aria-label="...">
 
<nav aria-label="...">
 
   <ul class="pagination pagination-lg">
 
   <ul class="pagination pagination-lg">
     <li class="page-item disabled">
+
     <li class="page-item active" aria-current="page">
       <a class="page-link" href="#" tabindex="-1">1</a>
+
       <span class="page-link">
 +
        1
 +
        <span class="sr-only">(current)</span>
 +
      </span>
 
     </li>
 
     </li>
 
     <li class="page-item"><a class="page-link" href="#">2</a></li>
 
     <li class="page-item"><a class="page-link" href="#">2</a></li>
سطر 110: سطر 111:
 
<nav aria-label="...">
 
<nav aria-label="...">
 
   <ul class="pagination pagination-sm">
 
   <ul class="pagination pagination-sm">
     <li class="page-item disabled">
+
     <li class="page-item active" aria-current="page">
       <a class="page-link" href="#" tabindex="-1">1</a>
+
       <span class="page-link">
 +
        1
 +
        <span class="sr-only">(current)</span>
 +
      </span>
 
     </li>
 
     </li>
 
     <li class="page-item"><a class="page-link" href="#">2</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="#">3</a></li>
 
   </ul>
 
   </ul>
</nav>
+
</nav
 
</syntaxhighlight>
 
</syntaxhighlight>
 
== المحاذاة ==
 
== المحاذاة ==
سطر 153: سطر 157:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
== مصادر ==
 
== مصادر ==
* [https://getbootstrap.com/docs/4.0/components/pagination/ صفحة Pagination في توثيق Bootstrap].
+
* [https://getbootstrap.com/docs/4.5/components/pagination/ صفحة Pagination في توثيق Bootstrap].
 
[[تصنيف:Bootstrap|{{SUBPAGENAME}}]]
 
[[تصنيف:Bootstrap|{{SUBPAGENAME}}]]
 
[[تصنيف:Bootstrap components|{{SUBPAGENAME}}]]
 
[[تصنيف:Bootstrap components|{{SUBPAGENAME}}]]

المراجعة الحالية بتاريخ 06:40، 13 يوليو 2020

استخدم مكوِّن التصفّح الذي يقدّمه إطار العمل Bootstrap للدّلالة على وجود سلسلة محتوى مرتبط مُقسَّم على صفحات عدّة.

نظرة عامّة

يستخدم إطار العمل Bootstrap كتلة عريضة من الروابط المرتبطة في ما بينها للإشارة إلى وجود المحتوى على صفحات عدّة، وجعل الروابط سهلة التمييز والتمدّد، مع توفير مساحة نقر مريحة. يُبنَى شريط التصفّح باستخدام عناصر HTML وبالتالي يمكن لقارئات الشاشة قراءة عدد الروابط الموجودة. استخدم العنصُر <nav> لتقديم عناصر التصفّح إلى قارئات الشاشة والتقنيّات المساعدة الأخرى على أنّها عناصر تنقّل.

يُنصَح - علاوة على ذلك - باستخدام الخاصيّة aria-label ضمن العنصُر <nav> للدلالة على الغرض من شريط التصفّح الذي يتكوّن عادةً من أكثر من صفحة. إنْ كان شريط التصفّح يُستخدَم - مثلًا - للتنقّل بين مجموعة من نتائج البحث فإنّه يمكن إعطاء القيمة "صفحات نتائج البحث" للخاصيّة aria-label.

<nav aria-label="مثال على صفحات التنقّل">
  <ul class="pagination">
    <li class="page-item"><a class="page-link" href="#">السابق</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="#">التالي</a></li>
  </ul>
</nav>

استخدام الأيقونات في شريط التصفّح

تأكّد عند استخدام أيقونات أو رموز بدلًا من المحتوى النصيّ في بعضٍ من روابط التصفّح من توفير الدعم لقارئات الشاشة والتقنيّات المساعدة باستخدام الخاصيّات aria-*‎.

<nav aria-label="مثال على صفحات التنقّل">
  <ul class="pagination">
    <li class="page-item">
      <a class="page-link" href="#" aria-label="Previous">
        <span aria-hidden="true">&laquo;</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">&raquo;</span>
      </a>
    </li>
  </ul>
</nav>

تنشيط روابط الصفحات وتعطيلها

يمكن تخصيص روابط التصفّح حسب الحاجة. استخدم الصنف ‎.disabled للروابط التي تظهر غير قابلة للنقر والصنف ‎.active للإشارة إلى الصفحة النشطة حاليًّا.

يستخدم الصنف ‎.disabled الخاصيّة pointer-events: none لمحاولة تعطيل وظيفة الرابط من العنصُر <a>، إلّا أنّ هذه الخاصيّة ليست معياريّة في CSS حتى الآن، ولا تؤثّر على التنقّل باستخدام لوحة المفاتيح. لذا يجب دائمًا إضافة الخاصيّة tabindex="-1"‎ إلى الروابط المُعطّلة واستخدام شفرة JavaScript مُخصَّصة لتعطيل وظيفتها.

<nav aria-label="...">
  <ul class="pagination">
    <li class="page-item disabled">
      <a class="page-link" href="#" tabindex="-1">السابق</a>
    </li>
    <li class="page-item"><a class="page-link" href="#">1</a></li>
    <li class="page-item active">
      <a class="page-link" href="#">2 <span class="sr-only">(الحالي)</span></a>
    </li>
    <li class="page-item"><a class="page-link" href="#">3</a></li>
    <li class="page-item">
      <a class="page-link" href="#">التالي</a>
    </li>
  </ul>
</nav>

يمكن التخلّي عن الروابط النشطة أو المُعطّلة واستخدام <span> مكانها، أو عدم استخدام الرابط (<a>) بالنسبة للسّهم في حالتيْ التالي/السابق لحذف وظيفة الرابط ومنع استقبال المؤشّر باستخدام لوحة المفاتيح مع الإبقاء على التنسيق المرغوب.

<nav aria-label="...">
  <ul class="pagination">
    <li class="page-item disabled">
      <span class="page-link">السابق</span>
    </li>
    <li class="page-item"><a class="page-link" href="#">1</a></li>
    <li class="page-item active">
      <span class="page-link">
        2
        <span class="sr-only">(الحالي)</span>
      </span>
    </li>
    <li class="page-item"><a class="page-link" href="#">3</a></li>
    <li class="page-item">
      <a class="page-link" href="#">التالي</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 class="sr-only">(current)</span>
      </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 class="sr-only">(current)</span>
      </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

المحاذاة

بدّل محاذاة مكوّنات التصفّح باستخدام أدوات Flexbox.

<nav aria-label="مثال على صفحات التنقّل">
  <ul class="pagination justify-content-center">
    <li class="page-item disabled">
      <a class="page-link" href="#" tabindex="-1">السابق</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="#">التالي</a>
    </li>
  </ul>
</nav>
<nav aria-label="مثال على صفحات التنقّل">
  <ul class="pagination justify-content-end">
    <li class="page-item disabled">
      <a class="page-link" href="#" tabindex="-1">السابق</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="#">التالي</a>
    </li>
  </ul>
</nav>

مصادر