بنية thead وtbody وtfoot
نظّم صفوف الجدول في أقسام دلالية للرأس والمحتوى والتذييل
بنية thead وtbody وtfoot درس مجاني في HTML Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في HTML Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة HTML Academy 4 دروس في المجموع.
أقسام الجدول
يحتوي جدول HTML المكتمل على ثلاثة أقسام اختيارية لكن يُنصح باستخدامها:
<thead>— صفوف الرأس<tbody>— صفوف المتن (البيانات الرئيسية)<tfoot>— صفوف التذييل (الإجماليات والملخصات)
thead
يحيط العنصر <thead> بصفوف الرأس:
<table>
<thead>
<tr>
<th>Product</th>
<th>Quantity</th>
<th>Price</th>
</tr>
</thead>
...
</table>
<!-- thead rows repeat when printing multi-page tables -->
<!-- Screen readers associate header cells with data cells -->tbody
يحيط العنصر <tbody> بصفوف البيانات الرئيسية:
<table>
<thead>...</thead>
<tbody>
<tr>
<td>Widget A</td>
<td>5</td>
<td>$49.99</td>
</tr>
<tr>
<td>Widget B</td>
<td>3</td>
<td>$29.99</td>
</tr>
</tbody>
</table>tfoot
يحيط العنصر <tfoot> بصفوف التذييل — وعادةً ما تتضمن الإجماليات أو الملخصات:
<table>
<thead>...</thead>
<tbody>...</tbody>
<tfoot>
<tr>
<th colspan="2">Total</th>
<td>$309.92</td>
</tr>
</tfoot>
</table>
<!-- tfoot is written after tbody in HTML but renders at the bottom -->
<!-- In print, tfoot appears at the bottom of every page -->جدول منظم ومكتمل
جدول كامل بأقسامه الثلاثة:
<table>
<thead>
<tr>
<th>Item</th>
<th>Qty</th>
<th>Total</th>
</tr>
</thead>
<tbody>
<tr><td>Widget A</td><td>2</td><td>$99.98</td></tr>
<tr><td>Widget B</td><td>1</td><td>$49.99</td></tr>
</tbody>
<tfoot>
<tr><th colspan="2">Grand Total</th><td>$149.97</td></tr>
</tfoot>
</table>لماذا نستخدم thead وtbody وtfoot؟
فوائد بنية الجدول:
- الدلالات — تفهم قارئات الشاشة الفرق بين الرأس والبيانات والملخص
- الاستهداف باستخدام CSS — نسّقوا الأقسام بشكل مستقل
- الطباعة — يتكرر thead في كل صفحة مطبوعة
- التمرير — مرّروا tbody بشكل مستقل باستخدام CSS overflow
tbody قابل للتمرير
اجعلوا المتن وحده قابلًا للتمرير مع إبقاء الرأس ثابتًا:
table {
display: flex;
flex-direction: column;
height: 300px;
}
tbody {
overflow-y: auto;
flex: 1;
}tbody الضمني
إذا حذفتم <tbody>، يضيفه المتصفح تلقائيًا:
<!-- Written without tbody: -->
<table>
<thead>...</thead>
<tr><td>Data</td></tr> <!-- browser wraps this in tbody -->
</table>
<!-- Always write tbody explicitly for clarity -->
<!-- Some CSS selectors like tbody:nth-child won't work without explicit tbody -->عناصر tbody متعددة
يمكن أن يحتوي الجدول على مجموعات متعددة من <tbody>:
<table>
<thead>...</thead>
<tbody>
<tr><td colspan="3"><strong>Category A</strong></td></tr>
<tr><td>Item 1</td><td>2</td><td>$10</td></tr>
</tbody>
<tbody>
<tr><td colspan="3"><strong>Category B</strong></td></tr>
<tr><td>Item 2</td><td>5</td><td>$25</td></tr>
</tbody>
</table>تنسيق أقسام الجدول
استهدفوا الأقسام باستخدام CSS:
thead {
background: #1e293b;
color: white;
}
tbody tr:hover {
background: #f0f9ff;
}
tfoot {
border-top: 2px solid #334155;
font-weight: bold;
background: #f8fafc;
}سلوك قارئات الشاشة
عند استخدام بنية thead/tbody الصحيحة، تستطيع قارئات الشاشة:
- الإعلان عن رؤوس الأعمدة كسياق لكل خلية بيانات
- التنقل بين الأقسام (منطقة الرأس مقابل منطقة البيانات)
- إخبار المستخدمين بعدد الصفوف والأعمدة الموجودة
صفوف متعددة داخل thead
يمكن أن يحتوي thead على صفوف متعددة للرؤوس المعقدة:
<thead>
<tr>
<th rowspan="2">Product</th>
<th colspan="2">Q1</th>
<th colspan="2">Q2</th>
</tr>
<tr>
<th>Units</th><th>Revenue</th>
<th>Units</th><th>Revenue</th>
</tr>
</thead>تحقق سريع
أين يظهر tfoot عادةً في مصدر HTML مقارنةً بالجدول المعروض؟
مراجعة: thead وtbody وtfoot
أساسيات بنية الجدول:
<thead>— صفوف الرأس (تتكرر عند الطباعة)<tbody>— صفوف البيانات (يمكن أن تكون متعددة)<tfoot>— صفوف الملخص أو الإجمالي- تتيح استهداف الأقسام باستخدام CSS وقراءة الجداول بطريقة ميسّرة
- اكتبوا tbody دائمًا بشكل صريح، رغم أن المتصفحات تضيفه تلقائيًا
الأسئلة الشائعة
هل درس «بنية thead وtbody وtfoot» مجاني؟
نعم — نص درس «بنية thead وtbody وtfoot» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة HTML Academy، انتقل إلى CoddyKit PRO. تتضمن دورة HTML Academy 4 دروس في المجموع.
ماذا ستتعلم في «بنية thead وtbody وtfoot»؟
نظّم صفوف الجدول في أقسام دلالية للرأس والمحتوى والتذييل تتمرن على HTML Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ HTML Academy؟
لا تُشترط خبرة سابقة. HTML Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «بنية thead وtbody وtfoot»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس HTML Academy هذا؟
نعم. كل درس في HTML Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- table وtr وtd وth
- بنية thead وtbody وtfoot
- colspan وrowspan للامتداد
- إمكانية الوصول إلى الجداول: scope وsummary وcaption