Misalkan markup ini:
<table class="table table-bordered" align="center">
Tidak masalah berapa banyak sel yang saya miliki, tabel selalu 100% lebar. Kenapa begitu?
Misalkan markup ini:
<table class="table table-bordered" align="center">
Tidak masalah berapa banyak sel yang saya miliki, tabel selalu 100% lebar. Kenapa begitu?
Jawaban:
Semua tabel dalam rentang bootstrap sesuai dengan wadahnya, yang dapat Anda lakukan dengan mudah dengan menempatkan meja Anda di dalam .span*
elemen kisi pilihan Anda. Jika Anda ingin menghapus properti ini, Anda dapat membuat kelas tabel Anda sendiri dan menambahkannya ke tabel yang ingin Anda kembangkan dengan konten di dalamnya:
.table-nonfluid {
width: auto !important;
}
Anda bisa menambahkan kelas ini di dalam stylesheet Anda sendiri dan cukup menambahkannya ke wadah tabel Anda seperti ini:
<table class="table table-nonfluid"> ... </table>
Dengan cara ini perubahan Anda tidak akan memengaruhi bootstrap stylesheet itu sendiri (Anda mungkin ingin memiliki tabel cairan di tempat lain dalam dokumen Anda).
.span*
kelas ke meja Anda untuk memberikannya lebar.
!important
kewidth: auto
<table style="width: auto;" ...
bekerja dengan baik. Diuji di Chrome 38, IE 11 dan Firefox 34.
jsfiddle: http://jsfiddle.net/rpaul/taqodr8o/
Jika Anda menggunakan Bootstrap 4, gunakan .w-auto
.
Mengapa melawannya? Mengapa tidak hanya mengontrol lebar tabel Anda menggunakan kisi bootstrap? Ini markup Bootstrap 3.
<div class="row">
<div class="col-sm-6">
<table></table>
</div>
</div>
Ini akan membuat tabel yang setengah (6 dari 12) dari lebar elemen yang mengandung.
Saya kadang-kadang menggunakan gaya sebaris sesuai jawaban lain, tetapi tidak disarankan.
Jika Anda menggunakan bootstrap 4, ia memiliki beberapa kelas pembantu yang bagus untuk lebar seperti:
w-25, w-50, w-75, and w-100
Inilah dokumennya: https://getbootstrap.com/docs/4.0/utilities/sizing/
Saya mengalami masalah yang sama, saya membuat tabel diperbaiki dan kemudian menentukan lebar td saya. Jika Anda memiliki Anda dapat melakukannya juga.
<style>
table {
table-layout: fixed;
word-wrap: break-word;
}
</style>
<td width="10%" /td>
Saya tidak beruntung dengan .tabel-nonfluid.
width: auto !important;
!important
(ini adalah praktik yang buruk ). Lihat komentar pada jawaban di bawah ini .
Saya sudah mencoba menambahkan style="width: auto !important"
dan bekerja sangat baik untuk saya!
<link>
Tag gaya khusus Anda muncul di bawah<link>
tag Bootstrap ), maka aturan akan mengalir seperti yang dirancang, dan Anda tidak perlu menggunakan !important
pengecualian sama sekali. Ini benar karena width: 100%;
didefinisikan table
dalam Bootstrap CSS dan begitu juga menggantikan width: auto;
aturan Anda .