Navigation Patterns — UI/UX

Navigasi — Membantu User Menemukan Jalan Navigasi yang baik membuat user bisa menemukan apa yang mereka cari tanpa berpikir keras. Navigasi yang buruk membuat…

Navigasi adalah petunjuk yang memberi tahu pengunjung dua hal: dia sedang di mana, dan bagaimana pergi ke tempat lain. Bayangin papan denah di mal. Ada daftar lantai dan tokonya (navigasi utama), ada titik merah "Anda di sini" (penanda halaman aktif), dan kadang ada jalur dari pintu masuk sampai ke toko yang kamu cari (breadcrumb). Denah yang baik terlihat tanpa dicari, dan titik merahnya cuma satu.

🧪 Tebakan cepat: Situs Homestay Kabut punya empat halaman utama: Beranda, Kamar, Lokasi, Pesanan. Supaya rapi, Bu Sri menyembunyikan keempatnya di balik tombol "Menu" (hamburger) di HP. Apakah tamu tetap memakai navigasinya sesering kalau link-nya terlihat? Jawabannya ada di bagian "Di HP: link terlihat, tab bar, atau hamburger".

Pola-pola navigasi

Pola Cocok untuk Di Homestay Kabut
Link di atas (top nav) situs dengan sedikit halaman utama Beranda, Kamar, Lokasi, Pesanan
Tab bar bawah aplikasi di HP dengan 3 sampai 5 tujuan yang sering dipindah dasbor Bu Sri: Pesanan, Kalender, Kamar, Akun
Sidebar aplikasi dengan banyak bagian, di layar lebar dasbor Bu Sri di laptop
Hamburger (menu tersembunyi) link yang gak muat dan jarang dipakai Kebijakan privasi, Syarat, Tentang Bu Sri
Breadcrumb halaman yang ada di bawah halaman lain Beranda › Kamar › Kamar Teras

Pola-pola ini bisa digabung. Situs tamu memakai link di atas, dan halaman kamar menambahkan breadcrumb.

Bungkus dengan nav, tandai halaman aktif

<nav aria-label="Navigasi utama">
  <ul>
    <li><a href="/">Beranda</a></li>
    <li><a href="/kamar" aria-current="page">Kamar</a></li>
    <li><a href="/lokasi">Lokasi</a></li>
    <li><a href="/pesanan">Pesanan</a></li>
  </ul>
</nav>

<style>
  nav a { display: block; padding: 12px 10px; color: #475569; text-decoration: none; }
  nav a[aria-current="page"] { color: #15803d; font-weight: 700; box-shadow: inset 0 -3px #15803d; }
</style>

Di latihan nanti, kode awalnya <nav> dengan tiga link: Home, Products, About. Tambahkan aria-label="Main navigation" di <nav>, dan aria-current="page" di link Home saja.

Breadcrumb di halaman kamar

Halaman Kamar Teras ada di bawah halaman Kamar. Breadcrumb menunjukkan jalurnya dan memberi jalan naik satu tingkat:

<nav aria-label="Breadcrumb" class="crumbs">
  <ol>
    <li><a href="/">Beranda</a></li>
    <li><a href="/kamar">Kamar</a></li>
    <li><a href="/kamar/teras" aria-current="page">Kamar Teras</a></li>
  </ol>
</nav>

<style>
  .crumbs ol { display: flex; flex-wrap: wrap; list-style: none; padding: 0; }
  .crumbs a { display: inline-block; padding: 4px 0; }
  .crumbs li + li::before {
    content: ""; display: inline-block; width: 6px; height: 6px; margin: 0 10px 2px 6px;
    border-top: 2px solid #475569; border-right: 2px solid #475569; transform: rotate(45deg);
  }
</style>

Di HP: link terlihat, tab bar, atau hamburger

Kami mengukur halaman Bu Sri di lebar 375px, di Chromium, WebKit, dan Firefox. Hasilnya sama di ketiganya:

Pola Link terlihat tanpa diketuk Kotak link terkecil
Link di atas, di baris sendiri di bawah nama situs 4 dari 4, muat satu baris 65,9 × 48px
Tab bar bawah, ikon dan label 4 dari 4 93,8 × 56px
Hamburger tertutup 0 dari 4 tombol Menu 68 × 48px

Batas ukuran target sentuh dari pelajaran density: WCAG 2.5.8 minimal 24 × 24px, Apple 44 × 44pt, Material 48 × 48dp. Ketiga pola lolos. Bedanya ada di yang terlihat.

Nielsen Norman Group menguji ini di 2016 dengan 179 peserta dan 6 situs. Di HP, navigasi yang tersembunyi dipakai di 57% kasus, sedangkan navigasi yang sebagian terlihat dipakai di 86%, dan tugasnya 15% lebih lambat kalau navigasinya tersembunyi. Di desktop jaraknya lebih jauh: 27% lawan 48 sampai 50%. Jadi jawaban tebakannya: enggak. Yang gak terlihat lebih jarang dipakai. Itu jawaban tebakannya.

Pilihan untuk Bu Sri:

⚠️ Jebakan yang sering ketemu

TL;DR: Navigasi menjawab "aku di mana" dan "ke mana lagi". Bungkus dengan <nav aria-label="..."> (nama wajib kalau <nav>-nya lebih dari satu), dan tandai link halaman yang sedang dibuka dengan aria-current="page", cuma di satu link, lalu tebalkan lewat selector atribut yang sama, bukan cuma warna. Pilih polanya dari jumlah dan pentingnya tujuan: link di atas untuk situs dengan sedikit halaman, tab bar bawah untuk 3 sampai 5 tujuan aplikasi di HP, sidebar untuk aplikasi besar di layar lebar, breadcrumb (<ol> di dalam <nav aria-label="Breadcrumb">) untuk halaman bertingkat, dan hamburger cuma untuk yang gak muat dan jarang dipakai. Studi NN/g: di HP, navigasi tersembunyi dipakai 57% kasus, yang sebagian terlihat 86%.

Yang akan kamu pelajari