Bagaimana cara mengatur batas ke elemen ‹tbody›?

Mengapa batasnya tidak terlihat di sekitar tbody pada gambar berikut? Saya mencoba rules="groups" dan batasnya muncul, tetapi hanya di antara dua bagian tbody dan batas itu diciutkan.

table.sectioned tbody {
  border: 2px solid black;
  border-collapse: separate;
  border-spacing: 4px;
}
<table class="sectioned">
  <tbody>
    <tr><td colspan="2"><b>General Data</b></td></tr>
    <tr><td>Tail Number</td><td>N0809021</td></tr>
    <tr><td>Type of Ownership</td><td>personal</td></tr>
    <tr><td>Type of Aircraft</td><td>aircraft under 13,000 pounds</td></tr>
    <tr><td>Year of Manufacture</td><td>1999</td></tr>
    <tr><td>Use of Aircraft</td><td>private</td></tr>
    <tr><td>Start Date</td><td></td></tr>
    <tr><td>Policy Length</td><td>6 months</td></tr>
  </tbody>
  <tbody>
    <tr><td colspan="2"><b>Additional Aircraft Information</b></td></tr>
    <tr><td>Manufacturer</td><td></td></tr>
    <tr><td>Model</td><td></td></tr>
    <tr><td>Engine Make</td><td></td></tr>
    <tr><td>Number of Seats</td><td></td></tr>
  </tbody>
</table>


person George    schedule 24.09.2013    source sumber
comment
Tambahkan display:block dan perbatasan akan muncul.   -  person Barbara Laird    schedule 24.09.2013
comment
@Keith, tbody adalah elemen wadah untuk bagian tubuh elemen tabel stackoverflow.com/questions/923655/   -  person Patrick Evans    schedule 24.09.2013
comment
Terima kasih, Barbara. display:block menampilkan batas, meskipun tanpa spasi batas. Apakah ada cara agar penspasian perbatasan berfungsi di sini?   -  person George    schedule 24.09.2013
comment
Mengubah tipe tampilan tubuh telah menyebabkan elemen tabel anonim disisipkan di dalam tubuh. Anda tidak dapat menata elemen HTML anonim.   -  person cimmanon    schedule 24.09.2013


Jawaban (3)


Menambahkan:

table {border-collapse: collapse;}

FIDDLE

person Riskbreaker    schedule 24.09.2013

Tambahkan display:block ke gaya tubuh Anda. Coba ini

tbody{
    display:block;
    border: 2px solid black;
    border-collapse: separate;
    border-spacing: 4px; 
}

Anda dapat mengujinya di fiddle ini

person Brian Kinyua    schedule 24.09.2013
comment
Terima kasih, Brian. Itu berhasil. Dan margin-bottom: 10px di biola Anda menyebabkan batasnya terpisah. - person George; 24.09.2013
comment
Perhatikan bahwa mengubah tipe tampilan badan membuat kolom tidak sejajar lagi: jsfiddle.net/bPL86/1 - person cimmanon; 25.09.2013
comment
Aku mengerti itu, teman. Seolah-olah setiap orang menjadi mejanya sendiri. Sayang sekali. Saya kira hal terbaik yang bisa saya lakukan adalah membuat kolom pertama memiliki lebar tetap. - person George; 25.09.2013
comment
...Saya masih berpikir tabel adalah solusinya, tidak perlu display:block tetapi apa pun yang sesuai dengan kebutuhan Anda - person Riskbreaker; 25.09.2013
comment
@ user1981459 margin itu untuk tujuan estetika :) dan sama-sama - person Brian Kinyua; 25.09.2013

Gunakan box-shadow bukannya border. Ini berfungsi tidak peduli nilai border-collapse mana yang diterapkan. Selain itu, Anda juga dapat menerapkan border-radius padanya.

tbody {
  box-shadow: 0 0 0 1px black;
  border-radius: 5px;
}
<table>
  <thead>
    <tr>
      <th>Firstname</th>
      <th>Lastname</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Jill</td>
      <td>Smith</td>
    </tr>
    <tr>
      <td>Eve</td>
      <td>Jackson</td>
    </tr>
  </tbody>
</table>

person Stickers    schedule 16.02.2018