<table>
<tr>
<td>Test</td>
<td>A long string blah blah blah</td>
</tr>
</table>
<style>
td{max-width:67%;}
</style>
Di atas tidak berhasil. Bagaimana cara mengatur lebar maksimal sel tabel menggunakan persentase?
html
css
html-table
Leo Jiang
sumber
sumber
Jawaban:
Menurut definisi lebar-maks dalam spesifikasi CSS 2.1, “efek 'lebar-minimum' dan 'lebar-maksimal' pada tabel, tabel sebaris, sel tabel, kolom tabel, dan grup kolom tidak ditentukan.” Jadi Anda tidak bisa langsung mengatur max-width pada elemen td.
Jika Anda hanya ingin kolom kedua mengambil paling banyak 67%, maka Anda dapat mengatur lebar (yang berlaku lebar minimum, untuk sel tabel) menjadi 33%, misalnya dalam kasus contoh
Pengaturan untuk kedua kolom tidak akan bekerja dengan baik, karena cenderung membuat browser memberikan lebar kolom yang sama.
sumber
Pertanyaan lama yang saya tahu, tetapi sekarang ini dapat dilakukan dengan menggunakan properti css
table-layout: fixed
pada tag tabel. Jawaban di bawah dari pertanyaan ini, lebar persentase CSS dan luapan teks dalam sel tabelIni mudah dilakukan dengan menggunakan
table-layout: fixed
, tetapi sedikit rumit karena tidak banyak orang yang mengetahui tentang properti CSS ini.Lihat aksinya di biola yang diperbarui di sini: http://jsfiddle.net/Fm5bM/4/
sumber
max-width
di jsfiddle itu, lebarnya akan tetap sama jadi bukanmax-width
yang mengaturnya. Mungkin lebih jelas jika Anda menggantinya dengan amax-width: 10%
untuk yang pertamatd
... Anda akan melihat bahwa itu tidak berubah. jsfiddle.net/w3f8ey22/1Saya tahu ini benar-benar setahun kemudian, tetapi saya pikir saya akan berbagi. Saya mencoba melakukan hal yang sama dan menemukan solusi yang berhasil untuk saya. Kami menetapkan lebar maksimal untuk seluruh tabel, lalu bekerja dengan ukuran sel untuk efek yang diinginkan.
Letakkan tabel di div-nya sendiri, lalu atur lebar, min-width, dan / atau max-width dari div seperti yang diinginkan untuk seluruh tabel. Kemudian, Anda dapat bekerja dan mengatur lebar dan lebar-min untuk sel lain, dan lebar maksimum untuk div secara efektif bekerja di sekitar dan ke belakang untuk mencapai lebar maksimal yang kita inginkan.
Kemudian dalam gaya Anda taruh:
Memang, ini tidak memberi Anda lebar "maks" dari sel itu sendiri, tetapi memungkinkan beberapa kontrol yang mungkin bekerja sebagai pengganti opsi semacam itu. Tidak yakin apakah itu akan bekerja untuk kebutuhan Anda. Saya tahu itu berfungsi untuk situasi kami di mana kami ingin sisi navigasi di halaman skala naik dan turun ke satu titik tetapi untuk semua layar lebar hari ini.
sumber
persen harus relatif terhadap ukuran absolut, coba ini:
sumber