สวัสดีทั้งหมดเป็นเวลานานแล้วที่ฉันถามอะไรบางอย่างนี่เป็นสิ่งที่รบกวนฉันมาระยะหนึ่งแล้วคำถามนั้นอยู่ในชื่อ:
วิธีใดที่คุณต้องการในการเขียนตาราง HTML ที่มีส่วนหัวแนวตั้ง
โดยส่วนหัวแนวตั้งฉันหมายความว่าตารางมี<th>
แท็กheader ( ) ทางด้านซ้าย (โดยทั่วไป)
ส่วนหัวข้อมูลข้อมูลข้อมูล
ส่วนหัว 2ข้อมูลข้อมูล
ส่วนหัวข้อมูลข้อมูลข้อมูล3ข้อมูล
พวกเขามีลักษณะเช่นนี้จนถึงตอนนี้ฉันมีสองตัวเลือก
ตัวเลือกแรก
<table id="vertical-1">
<caption>First Way</caption>
<tr>
<th>Header 1</th>
<td>data</td><td>data</td><td>data</td>
</tr>
<tr>
<th>Header 2</th>
<td>data</td><td>data</td><td>data</td>
</tr>
<tr>
<th>Header 2</th>
<td>data</td><td>data</td><td>data</td>
</tr>
</table>
ประโยชน์หลักของวิธีนี้คือการที่คุณมีส่วนหัว (ซ้ายจริง) ทางขวาถัดจากข้อมูลที่แสดงให้เห็นถึงสิ่งที่ฉันไม่ชอบ แต่เป็นว่า<thead>
, <tbody>
และ<tfoot>
แท็กจะหายไปและมีวิธีการที่จะรวมพวกเขาโดยไม่ทำลาย วางองค์ประกอบไว้ด้วยกันอย่างสวยงามซึ่งนำฉันไปสู่ตัวเลือกที่สอง
ตัวเลือกที่สอง
<style type="text/css">
#vertical-2 thead,#vertical-2 tbody{
display:inline-block;
}
</style>
<table id="vertical-2">
<caption>Second Way</caption>
<thead>
<tr>
<th colspan="3">Header 1</th>
</tr>
<tr>
<th colspan="3">Header 2</th>
</tr>
<tr>
<th colspan="3">Header 3</th>
</tr>
</thead>
<tbody>
<tr>
<td>row 1</td>
<td>row 1</td>
<td>row 1</td>
</tr>
<tr>
<td>data</td>
<td>data</td>
<td>data</td>
</tr>
<tr>
<td>data</td>
<td>data</td>
<td>data</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="4">Footer</td>
</tr>
</tfoot>
</table>
ประโยชน์หลักนี่คือที่คุณมีตาราง html ที่สื่อความหมายได้อย่างเต็มที่ข้อบกพร่องที่เป็นตัวแทนที่เหมาะสมกับความต้องการบิตของ CSS สำหรับtbody
และthead
แท็กและที่ความสัมพันธ์ระหว่างส่วนหัวและข้อมูลที่ไม่ชัดเจนเท่าที่ผมมีข้อสงสัยของฉันเมื่อมีการสร้าง มาร์กอัป
ดังนั้นทั้งสองวิธีแสดงตารางว่าควรจะเป็นอย่างไรต่อไปนี้เป็นเหยือก:
ด้วยส่วนหัวทางด้านซ้ายหรือด้านขวาหากคุณต้องการดังนั้นข้อเสนอแนะทางเลือกอื่นปัญหาเบราว์เซอร์หรือไม่?