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!

Bootstrap - Accordion

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:

  1. Kontainer luar ( biasanya <div> dengan kelas accordion)
  2. Item accordion individual (setiapnya di dalam <div> dengan kelas accordion-item)
  3. Header untuk setiap item ( biasanya elemen <h2> dengan kelas accordion-header)
  4. Tombol dalam header untuk memicu ekspansi/perkecangan
  5. Panel konten yang ditampilkan/ disembunyikan saat diklik (di dalam <div> elemen dengan kelas accordion-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:

  1. Kita mulai dengan <div> yang memiliki kelas accordion. Ini adalah kontainer utama kita.
  2. Dalamnya, kita memiliki accordion-item divs untuk setiap seksi yang dapat diperluas/diperkecil.
  3. Setiap item memiliki header (accordion-header) dengan tombol yang mengontrol aksi perluasan/perkecangan.
  4. Konten berada di dalam <div> dengan kelas accordion-collapse dan collapse.
  5. Atribut data-bs-toggle="collapse" dan data-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:

  1. Gunakan level heading yang benar (<h2>, <h3>, dll.) untuk header accordion.
  2. Sertakan atribut aria-expanded pada tombol (diatur ke "true" saat terbuka, "false" saat ditutup).
  3. Gunakan aria-controls pada tombol untuk menghubungkannya ke div konten.
  4. 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