Modals & Overlays — UI/UX

Modal dan Overlay — Fokus Perhatian User Modal (dialog) adalah overlay yang muncul di atas konten utama, meminta perhatian atau input dari user. Kapan Menggunak

Modal dan Overlay — Fokus Perhatian User

Modal (dialog) adalah overlay yang muncul di atas konten utama, meminta perhatian atau input dari user.

Kapan Menggunakan Modal

Baik:

Hindari:

Struktur Modal yang Baik

<dialog class="modal" aria-labelledby="modal-title">
  <div class="modal-header">
    <h2 id="modal-title">Konfirmasi Hapus</h2>
    <button aria-label="Tutup" class="close-btn">&times;</button>
  </div>
  <div class="modal-body">
    <p>Apakah kamu yakin ingin menghapus item ini?</p>
  </div>
  <div class="modal-footer">
    <button class="btn-ghost">Batal</button>
    <button class="btn-primary">Hapus</button>
  </div>
</dialog>

Accessibility Modal

  1. <dialog> element — semantic HTML5 element untuk modal
  2. aria-labelledby — menghubungkan modal ke judulnya
  3. Focus trap — Tab hanya berpindah antar elemen di dalam modal
  4. Escape to close — tekan Esc menutup modal
  5. Return focus — setelah modal ditutup, fokus kembali ke elemen yang membuka

Backdrop

.modal::backdrop {
  background: rgba(0, 0, 0, 0.5);
}

Pola Lain

Airbnb menggunakan modal untuk booking flow — langkah demi langkah dalam modal, dengan clear progress indicator.

Yang akan kamu pelajari