Bootstrap - Accordion: Panduan Pemula
Hai sana, bakal pengembang web! Hari ini, kita akan mendalam ke dunia yang menakjubkan Bootstrap Accordions. Sebagai guru komputer tetangga yang ramah, saya sangat gembira untuk memandu Anda dalam perjalanan ini. Jangan khawatir jika Anda belum pernah menulis baris kode sebelumnya - kita akan mulai dari awal dan bangun ke arah atas!
Apa Itu Bootstrap Accordion?
Sebelum kita melompat ke detailnya, mari bicarakan apa itu accordion dalam desain web. Bayangkan sebuah accordion musik - ia meluas dan menyusut, mengungkapkan berbagai seksi. Itu tepat apa yang dilakukan Bootstrap Accordion di halaman web! Itu adalah cara yang handal untuk mengatur konten, memungkinkan pengguna untuk menampilkan dan menyembunyikan seksi sesuai kebutuhan.
Cara Kerjanya
Bootstrap Accordion dibangun menggunakan kombinasi HTML, CSS, dan JavaScript (jangan khawatir, Bootstrap menangani sebagian besar JavaScript untuk kita!). Itu terdiri dari series elemen yang dapat diperluas atau diperkecil dengan mengklik header mereka.
Berikut adalah penjelasan komponen utama:
- Kontainer luar ( biasanya
<div>
dengan kelasaccordion
) - Item accordion individual (setiapnya di dalam
<div>
dengan kelasaccordion-item
) - Header untuk setiap item ( biasanya elemen
<h2>
dengan kelasaccordion-header
) - Tombol dalam header untuk memicu ekspansi/perkecangan
- Panel konten yang ditampilkan/ disembunyikan saat diklik (di dalam
<div>
elemen dengan kelasaccordion-collapse
)
Sekarang, mari kita lihat ini dalam aksi!
Contoh Dasar
Berikut adalah contoh Bootstrap Accordion yang sederhana:
<div class="accordion" id="basicAccordion">
<div class="accordion-item">
<h2 class="accordion-header" id="headingOne">
<button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
Item Accordion #1
</button>
</h2>
<div id="collapseOne" class="accordion-collapse collapse show" aria-labelledby="headingOne" data-bs-parent="#basicAccordion">
<div class="accordion-body">
Ini adalah konten item accordion pertama.
</div>
</div>
</div>
<div class="accordion-item">
<h2 class="accordion-header" id="headingTwo">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
Item Accordion #2
</button>
</h2>
<div id="collapseTwo" class="accordion-collapse collapse" aria-labelledby="headingTwo" data-bs-parent="#basicAccordion">
<div class="accordion-body">
Ini adalah konten item accordion kedua.
</div>
</div>
</div>
</div>
mari kitauraikan ini:
- Kita mulai dengan
<div>
yang memiliki kelasaccordion
. Ini adalah kontainer utama kita. - Dalamnya, kita memiliki
accordion-item
divs untuk setiap seksi yang dapat diperluas/diperkecil. - Setiap item memiliki header (
accordion-header
) dengan tombol yang mengontrol aksi perluasan/perkecangan. - Konten berada di dalam
<div>
dengan kelasaccordion-collapse
dancollapse
. - Atribut
data-bs-toggle="collapse"
dandata-bs-target="#collapseOne"
pada tombol menghubungkannya ke div konten.
Tips Profesional: Perhatikan bagaimana item pertama memiliki class="accordion-collapse collapse show"
dan aria-expanded="true"
? Ini berarti itu akan terbuka secara default saat halaman dimuat.
Accordion yang Rata
Ingin tampilan yang ramping tanpa border? Bootstrap menutupi Anda dengan accordion rata:
<div class="accordion accordion-flush" id="flushAccordion">
<div class="accordion-item">
<h2 class="accordion-header" id="flush-headingOne">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#flush-collapseOne" aria-expanded="false" aria-controls="flush-collapseOne">
Item Accordion Rata #1
</button>
</h2>
<div id="flush-collapseOne" class="accordion-collapse collapse" aria-labelledby="flush-headingOne" data-bs-parent="#flushAccordion">
<div class="accordion-body">Ini adalah item pertama accordion rata.</div>
</div>
</div>
<!-- Tambahkan item lainnya sesuai kebutuhan -->
</div>
Perbedaan utama di sini adalah penambahan kelas accordion-flush
ke kontainer utama. Ini menghapus warna latar belakang default dan beberapa border, memberikan tampilan yang lebih bersih.
Accordion Selalu Terbuka
Secara default, Bootstrap Accordions menutup item lain saat item baru dibuka. Tetapi, apa bila Anda ingin beberapa item tetap terbuka? Berikut adalah cara:
<div class="accordion" id="alwaysOpenAccordion">
<div class="accordion-item">
<h2 class="accordion-header" id="headingAlwaysOne">
<button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapseAlwaysOne" aria-expanded="true" aria-controls="collapseAlwaysOne">
Item Selalu Terbuka #1
</button>
</h2>
<div id="collapseAlwaysOne" class="accordion-collapse collapse show" aria-labelledby="headingAlwaysOne">
<div class="accordion-body">Item ini dapat tetap terbuka saat lainnya dibuka.</div>
</div>
</div>
<div class="accordion-item">
<h2 class="accordion-header" id="headingAlwaysTwo">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseAlwaysTwo" aria-expanded="false" aria-controls="collapseAlwaysTwo">
Item Selalu Terbuka #2
</button>
</h2>
<div id="collapseAlwaysTwo" class="accordion-collapse collapse" aria-labelledby="headingAlwaysTwo">
<div class="accordion-body">Item ini juga dapat tetap terbuka secara independen.</div>
</div>
</div>
</div>
Rahasia di sini? Kita menghapus atribut data-bs-parent
dari div konten. Ini memberitahu Bootstrap untuk tidak menutup item lain saat satu item dibuka.
Aksesibilitas
Aksesibilitas sangat penting dalam pengembangan web. Bootstrap Accordions datang dengan fitur aksesibilitas bawaan, tetapi penting untuk menggunakannya dengan benar:
- Gunakan level heading yang benar (
<h2>
,<h3>
, dll.) untuk header accordion. - Sertakan atribut
aria-expanded
pada tombol (diatur ke "true" saat terbuka, "false" saat ditutup). - Gunakan
aria-controls
pada tombol untuk menghubungkannya ke div konten. - Tambahkan
aria-labelledby
ke div konten, merujuk ke header yang sesuai.
Berikut adalah tabel yang menggabungkan atribut kunci aksesibilitas:
Atribut | Lokasi | Tujuan |
---|---|---|
aria-expanded | Tombol | Menandakan jika seksi diperluas |
aria-controls | Tombol | Menghubungkan tombol ke konten |
aria-labelledby | Div konten | Menghubungkan konten ke header |
Ingat, ini bukan hanya untuk tampilan - perangkat bantu dan teknologi lain bergantung pada atribut ini untuk menavigasi accordion Anda dengan benar.
Kesimpulan
Dan begitu saja, teman-teman! Anda telah memulai perjalanan Anda ke dunia Bootstrap Accordions. Dari struktur dasar hingga pertimbangan aksesibilitas, Anda sekarang memiliki alat untuk menciptakan konten yang terorganisir dan interaktif di halaman web Anda.
Ingat, latihan membuat sempurna. Cobalah menciptakan accordion Anda sendiri, cobalah berbagai gaya, dan terutama, bersenang-senang dengannya! Siapa tahu, Anda mungkin menemukan nada baru dalam pengembangan web. (Maaf, saya tidak bisa menahan untuk memberikan sedikit permainan kata accordion!)
Selamat coding, dan sampaijumpa lagi, terus memperluas pengetahuan Anda - seperti sebuah accordion!
Credits: Image by storyset