Saya ingin membuat tabel hanya menggunakan <div>
tag dan CSS.
Ini adalah tabel contoh saya.
<body>
<form id="form1">
<div class="divTable">
<div class="headRow">
<div class="divCell" align="center">Customer ID</div>
<div class="divCell">Customer Name</div>
<div class="divCell">Customer Address</div>
</div>
<div class="divRow">
<div class="divCell">001</div>
<div class="divCell">002</div>
<div class="divCell">003</div>
</div>
<div class="divRow">
<div class="divCell">xxx</div>
<div class="divCell">yyy</div>
<div class="divCell">www</div>
</div>
<div class="divRow">
<div class="divCell">ttt</div>
<div class="divCell">uuu</div>
<div class="divCell">Mkkk</div>
</div>
</div>
</form>
</body>
Dan Gaya:
<style type="text/css">
.divTable
{
display: table;
width:auto;
background-color:#eee;
border:1px solid #666666;
border-spacing:5px;/*cellspacing:poor IE support for this*/
/* border-collapse:separate;*/
}
.divRow
{
display:table-row;
width:auto;
}
.divCell
{
float:left;/*fix for buggy browsers*/
display:table-column;
width:200px;
background-color:#ccc;
}
</style>
Tapi tabel ini tidak berfungsi dengan IE7 dan versi di bawahnya. Tolong beri solusi dan ide Anda untuk saya. Terima kasih.
div
untuk membuat tabel?div
s lebih fleksibel daripada tabel!Jawaban:
Cuplikan yang dapat dijalankan:
Tampilkan cuplikan kode
sumber
div
seharusnya tidak digunakan untuk data tabel. Itu sama salahnya dengan menggunakan tabel untuk tata letak.Gunakan a
<table>
. Mudah, semantik benar, dan Anda akan selesai dalam 5 menit.sumber
Ini adalah utas lama, tetapi saya pikir saya harus memposting solusi saya. Saya menghadapi masalah yang sama baru-baru ini dan cara saya menyelesaikannya adalah dengan mengikuti pendekatan tiga langkah seperti diuraikan di bawah ini yang sangat sederhana tanpa CSS yang kompleks .
(CATATAN: Tentu saja, untuk peramban modern, menggunakan nilai-nilai tabel atau baris-tabel atau sel-tabel untuk atribut tampilan CSS akan menyelesaikan masalah. Tetapi pendekatan yang saya gunakan akan bekerja dengan baik di peramban modern dan yang lebih lama karena tidak gunakan nilai-nilai ini untuk atribut tampilan CSS.)
PENDEKATAN SEDERHANA 3-LANGKAH
Untuk tabel dengan divs saja sehingga Anda mendapatkan sel dan baris seperti dalam elemen tabel gunakan pendekatan berikut.
.table
kelas).row
kelas).cell
kelas)PEMBARUAN 1
Untuk menyiasati efek dengan lebar yang sama tidak dipertahankan di semua sel kolom seperti yang disebutkan
thatslch
dalam komentar, orang dapat mengadopsi salah satu dari dua pendekatan di bawah ini.Tentukan lebar untuk
cell
kelascell {display: inline-block; lebar: 340px;}
Gunakan CSS browser modern seperti di bawah ini.
.table {display: table; } .row {display: table-row;} .cell {display: table-cell;}
sumber
Jika ada sesuatu di dalam
<table>
Anda yang tidak Anda sukai, mungkin Anda bisa menggunakan file reset ?atau
jika Anda memerlukan ini untuk tata letak halaman periksa contoh tata letak cssplay untuk mendesain situs web tanpa tabel.
sumber
Saya tidak melihat jawaban apa pun mempertimbangkan Grid-Css. Saya pikir ini adalah pendekatan yang sangat elegan: grid-css bahkan mendukung rentang baris dan dan bentang kolom. Di sini Anda dapat menemukan artikel yang sangat bagus:
https://medium.com/@js_tut/css-grid-tutorial-filling-in-the-gaps-c596c9534611
sumber
Gunakan tipe dokumen yang benar; itu akan menyelesaikan masalah. Tambahkan baris di bawah ini ke bagian atas file HTML Anda:
sumber
OFF-TOPIC, tetapi mungkin membantu seseorang untuk HTML ... CSS yang lebih bersih
HTML
Bekerja di Chrome dan Firefox
sumber
<div>
elemen di dalamnya? Anda mungkin ingin.common_table div > div
Dalam membangun set tag tata letak khusus, saya menemukan jawaban lain untuk masalah ini. Disediakan di sini adalah kumpulan tag khusus dan kelas CSS mereka.
HTML
CSS
Kunci untuk mendapatkan sel kosong dan sel pada umumnya menjadi ukuran yang tepat, adalah Box-Sizing dan Padding. Border akan melakukan hal yang sama juga, tetapi membuat garis di baris. Padding tidak. Dan, sementara saya belum mencobanya, saya pikir Margin akan bertindak dengan cara yang sama seperti Padding, dalam memaksa dan mengosongkan sel untuk dirender dengan benar.
sumber