CSS memungkinkan kita untuk mengontrol tampilan tabel agar lebih menarik dan sesuai dengan desain keseluruhan situs web. Berikut adalah panduan lengkap tentang cara membuat tabel dengan CSS, termasuk penjelasan setiap langkah dan kode yang diperlukan.
Membuat Tabel dengan CSS
1. Struktur Dasar HTML
Langkah pertama adalah membuat struktur dasar tabel menggunakan HTML. Berikut adalah contoh tabel sederhana yang berisi data mahasiswa:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Tabel Mahasiswa</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<table class="styled-table">
<thead>
<tr>
<th>Nama</th>
<th>Jurusan</th>
<th>IPK</th>
</tr>
</thead>
<tbody>
<tr>
<td>Andi</td>
<td>Teknik Informatika</td>
<td>3.75</td>
</tr>
<tr>
<td>Budi</td>
<td>Sistem Informasi</td>
<td>3.65</td>
</tr>
<tr>
<td>Citra</td>
<td>Manajemen</td>
<td>3.85</td>
</tr>
</tbody>
</table>
</body>
</html>
2. Menambahkan CSS untuk Tabel
Setelah struktur HTML siap, kita bisa menambahkan CSS untuk memperindah tabel. Berikut adalah contoh file CSS (styles.css
) yang akan digunakan:
/* CSS untuk Tabel */
.styled-table {
border-collapse: collapse;
margin: 25px 0;
font-size: 18px;
text-align: left;
width: 100%;
}
.styled-table thead tr {
background-color: #009879;
color: #ffffff;
text-align: left;
}
.styled-table th,
.styled-table td {
padding: 12px 15px;
}
.styled-table tbody tr {
border-bottom: 1px solid #dddddd;
}
.styled-table tbody tr:nth-of-type(even) {
background-color: #f3f3f3;
}
.styled-table tbody tr:last-of-type {
border-bottom: 2px solid #009879;
}
Penjelasan CSS
.styled-table
border-collapse: collapse;
: Menggabungkan border dari tabel dan sel sehingga terlihat lebih rapi.margin: 25px 0;
: Memberikan jarak di atas dan bawah tabel.font-size: 18px;
: Mengatur ukuran font.text-align: left;
: Menyelaraskan teks ke kiri.width: 100%;
: Mengatur lebar tabel menjadi 100% dari kontainer induknya.
.styled-table thead tr
background-color: #009879;
: Mengatur warna latar belakang untuk baris header tabel.color: #ffffff;
: Mengatur warna teks menjadi putih.
.styled-table th, .styled-table td
padding: 12px 15px;
: Memberikan padding untuk sel tabel agar lebih nyaman dilihat.
.styled-table tbody tr
border-bottom: 1px solid #dddddd;
: Menambahkan border bawah untuk setiap baris tabel di dalam tbody.
.styled-table tbody tr:nth-of-type(even)
background-color: #f3f3f3;
: Memberikan warna latar belakang berbeda untuk baris genap tabel.
.styled-table tbody tr:last-of-type
border-bottom: 2px solid #009879;
: Menambahkan border bawah yang lebih tebal untuk baris terakhir tabel.
3. Hasil Akhir
Dengan menggabungkan HTML dan CSS di atas, tabel akan tampil lebih menarik dan terstruktur dengan baik. Berikut adalah contoh tampilan akhir tabel:
4. Tambahan Styling CSS
Untuk membuat tabel lebih menarik, kita bisa menambahkan beberapa efek tambahan menggunakan CSS. Misalnya, kita bisa menambahkan efek hover pada baris tabel:
.styled-table tbody tr:hover {
background-color: #f1f1f1;
cursor: pointer;
}
Dengan menambahkan kode di atas, ketika pengguna mengarahkan kursor ke salah satu baris tabel, warna latar belakang baris tersebut akan berubah, memberikan efek visual yang lebih interaktif.
Penjelasan Detail
A. Border dan Padding
- Border Collapse: Properti
border-collapse: collapse;
menggabungkan border dari tabel dan sel menjadi satu, sehingga tidak ada ruang di antara border. Ini membuat tabel terlihat lebih bersih. - Padding: Padding diatur agar teks di dalam sel tabel tidak terlalu rapat dengan border, memberikan ruang yang cukup untuk tampilan yang lebih baik.
B. Warna dan Background
- Background Header: Warna latar belakang pada baris header tabel ditetapkan menggunakan
background-color: #009879;
. Ini memberikan kontras yang baik dengan warna teks putih (color: #ffffff;
), sehingga header tabel mudah dibaca. - Alternating Row Colors: Dengan menggunakan selektor
nth-of-type(even)
, kita bisa memberikan warna latar belakang berbeda untuk baris genap, menciptakan efek zebra striping yang memudahkan pembacaan data pada tabel.
C. Efek Hover
- Hover Effect: Menambahkan efek hover pada baris tabel (
tr:hover
) membuat tabel lebih interaktif. Ketika pengguna mengarahkan kursor ke baris, warna latar belakang berubah, memberikan umpan balik visual yang membantu pengguna memahami elemen yang mereka interaksikan.
Contoh Kasus
Berikut adalah beberapa contoh kasus di mana styling tabel dengan CSS sangat berguna:
- Tabel Data Karyawan: Menampilkan daftar karyawan dengan informasi seperti nama, jabatan, dan gaji. Styling yang baik membantu memudahkan pembacaan dan pencarian informasi.
- Tabel Jadwal Pelajaran: Menampilkan jadwal pelajaran untuk siswa. Alternating row colors membantu siswa melihat perbedaan antara baris dengan lebih mudah.
- Tabel Laporan Keuangan: Menampilkan laporan keuangan bulanan. Efek hover dapat membantu pengguna menyoroti baris tertentu untuk analisis lebih lanjut.
Kesimpulan
Menggunakan CSS untuk styling tabel tidak hanya meningkatkan tampilan visual tetapi juga memperbaiki pengalaman pengguna secara keseluruhan. Dengan mengikuti panduan ini, Anda dapat membuat tabel yang tidak hanya fungsional tetapi juga menarik dan mudah dibaca.
Kode Lengkap
Berikut adalah kode lengkap untuk membuat tabel dengan CSS seperti yang dijelaskan di atas:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Tabel Mahasiswa</title>
<style>
/* CSS untuk Tabel */
.styled-table {
border-collapse: collapse;
margin: 25px 0;
font-size: 18px;
text-align: left;
width: 100%;
}
.styled-table thead tr {
background-color: #009879;
color: #ffffff;
text-align: left;
}
.styled-table th,
.styled-table td {
padding: 12px 15px;
}
.styled-table tbody tr {
border-bottom: 1px solid #dddddd;
}
.styled-table tbody tr:nth-of-type(even) {
background-color: #f3f3f3;
}
.styled-table tbody tr:last-of-type {
border-bottom: 2px solid #009879;
}
.styled-table tbody tr:hover {
background-color: #f1f1f1;
cursor: pointer;
}
</style>
</head>
<body>
<table class="styled-table">
<thead>
<tr>
<th>Nama</th>
<th>Jurusan</th>
<th>IPK</th>
</tr>
</thead>
<tbody>
<tr>
<td>Andi</td>
<td>Teknik Informatika</td>
<td>3.75</td>
</tr>
<tr>
<td>Budi</td>
<td>Sistem Informasi</td>
<td>3.65</td>
</tr>
<tr>
<td>Citra</td>
<td>Manajemen</td>
<td>3.85</td>
</tr>
</tbody>
</table>
</body>
</html>
Upvoted! Thank you for supporting witness @jswit.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit