Apakah ada cara untuk menambahkan scrollbar Horizontal ke tabel HTML? Saya benar-benar membutuhkannya untuk dapat digulir baik secara vertikal dan horizontal tergantung pada bagaimana tabel tumbuh tetapi saya tidak bisa menampilkan bilah gulir.
html
css
html-table
scrollbar
Tsundoku
sumber
sumber
Jawaban:
Apakah Anda mencoba
overflow
properti CSS ?overflow: scroll; /* Scrollbar are always visible */ overflow: auto; /* Scrollbar is displayed as it's needed */
UPDATE
Seperti yang ditunjukkan pengguna lain, ini tidak cukup untuk menambahkan scrollbar.
Jadi tolong, lihat dan beri suara positif pada komentar dan jawaban di bawah ini.
sumber
display: block
.Pertama, buatlah
display: block
tabel Andalalu, setel
overflow-x:
keauto
.table { display: block; overflow-x: auto; white-space: nowrap; }
Bagus dan bersih. Tidak ada pemformatan yang berlebihan.
Berikut adalah contoh yang lebih terlibat dengan teks tabel gulir dari halaman di situs web saya.
sumber
white-space: nowrap;
membantu segera melihat scrollbar.white-space: nowrap;
tidak menyelesaikan masalah (diuji di Firefox). Lebar baris kurang dari lebar tabel jika konten (teks) tidak cukup untuk memperluas baris.Bungkus tabel dalam DIV, atur dengan gaya berikut:
div.wrapper { width: 500px; height: 500px; overflow: auto; }
sumber
overflow:auto
sini tidak perlu. Tahukah Anda untuk mencapai ini tanpa menyetel lebar ... yang tampaknya selalu menjadi solusi dalam html - hardcode beberapa lebar atau tinggi tetapi tampaknya mengalahkan tujuan memiliki mesin tata letak!Gunakan atribut CSS " overflow " untuk ini.
Ringkasan singkat:
overflow: visible|hidden|scroll|auto|initial|inherit;
misalnya
table { display: block; overflow: scroll; }
sumber
Ini adalah perbaikan dari jawaban Serge Stroobandt dan bekerja dengan sempurna. Ini memecahkan masalah tabel tidak mengisi seluruh lebar halaman jika memiliki lebih sedikit kolom.
<style> .table_wrapper{ display: block; overflow-x: auto; white-space: nowrap; } </style> <div class="table_wrapper"> <table> ... </table> </div>
sumber
white-space: nowrap;
tampaknya opsional.Saya berhasil dengan baik dengan solusi yang diusulkan oleh @Serge Stroobandt, tetapi saya mengalami masalah yang dimiliki @Shevy dengan sel-sel yang kemudian tidak mengisi seluruh lebar tabel. Saya bisa memperbaiki ini dengan menambahkan beberapa gaya ke
tbody
.table { display: block; overflow-x: auto; white-space: nowrap; } table tbody { display: table; width: 100%; }
Ini berfungsi untuk saya di Firefox, Chrome, dan Safari di Mac.
sumber
Saya tidak bisa mendapatkan solusi di atas untuk bekerja. Namun, saya menemukan peretasan:
body { background-color: #ccc; } .container { width: 300px; background-color: white; } table { width: 100%; border-collapse: collapse; } td { border: 1px solid black; } /* try removing the "hack" below to see how the table overflows the .body */ .hack1 { display: table; table-layout: fixed; width: 100%; } .hack2 { display: table-cell; overflow-x: auto; width: 100%; }
<div class="container"> <div class="hack1"> <div class="hack2"> <table> <tr> <td>table or other arbitrary content</td> <td>that will cause your page to stretch</td> </tr> <tr> <td>uncontrollably</td> <td>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</td> </tr> </table> </div> </div> </div>
sumber
Saya mengalami masalah yang sama. Saya menemukan solusi berikut, yang hanya diuji di Chrome v31:
table { table-layout: fixed; } tbody { display: block; overflow: scroll; }
sumber
table-layout: fixed
bagus.Saya menemukan jawaban ini berdasarkan solusi sebelumnya dan itu adalah komentar dan menambahkan beberapa penyesuaian saya sendiri. Ini berfungsi untuk saya di meja responsif.
table { display: inline-block; overflow-x: auto; white-space: nowrap; // make fixed table width effected by overflow-x max-width: 100%; // hide all borders that make rows not filled with the table width border: 0; } // add missing borders table td { border: 1px solid; }
sumber
'Lebar lebih dari 100%' di atas meja benar-benar membuatnya bekerja untuk saya.
.table-wrap { width: 100%; overflow: auto; } table { table-layout: fixed; width: 200%; }
sumber
Sisipkan tabel di dalam div, sehingga tabel akan berukuran penuh
HTML
<div class="scroll"> <table> </table> </div>
CSS
.scroll{ overflow-x: auto; white-space: nowrap; }
sumber
Dengan bootstrap
<div class="table-responsive"> <table class="table"> ... </table> </div>
sumber
//Representation of table <div class="search-table-outter"> <table class="table table-responsive search-table inner"> </table> </div> //Css to make Horizontal Dropdown <style> .search-table{table-layout: auto; margin:40px auto 0px auto; } .search-table, td, th { border-collapse: collapse; } th{padding:20px 7px; font-size:15px; color:#444;} td{padding:5px 10px; height:35px;} .search-table-outter { overflow-x: scroll; } th, td { min-width: 200px; } </style>
sumber