โครงสร้าง thead, tbody และ tfoot
จัดระเบียบแถวของตารางเป็นส่วนหัว เนื้อหา และท้ายตารางเชิงความหมาย
โครงสร้าง thead, tbody และ tfoot เป็นบทเรียน HTML Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 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 แยกต่างหากได้ด้วย overflow ของ CSS
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” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส HTML Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส HTML Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “โครงสร้าง thead, tbody และ tfoot”
จัดระเบียบแถวของตารางเป็นส่วนหัว เนื้อหา และท้ายตารางเชิงความหมาย คุณปฏิบัติ HTML Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน HTML Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน HTML Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “โครงสร้าง thead, tbody และ tfoot” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน HTML Academy นี้ได้ไหม
ได้ บทเรียน HTML Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- table, tr, td และ th
- โครงสร้าง thead, tbody และ tfoot
- colspan และ rowspan สำหรับการครอบคลุมเซลล์
- การเข้าถึงตาราง: scope, summary และ caption