Apa itu navigation bar?
Biasa juga disebut dengan menu utama atau navigasi utama. Navigasi itu kalau bagi pelaut artinya petunjuk.
Jadi, fungsi utama dari menu navigasi adalah petunjuk berupa teks link supaya pengunjung dapat menuju halaman-halaman lain yang direkomendasikan.
Contoh horizontal navigation bar:
Contoh verical navigation bar:
Supaya lebih jelas:
Jadi, navigasi bar itu ada dua yaitu:
- Vertical navigation bar (arahnya kebawah)
- Horizontal navigation bar (arahnya kesamping)
Navigation Bar
Pada umumnya untuk membuat nav bar kita membutuhkan element list html.
Yang digunakan adalah unordered list <ul>
bukan ordered list <ol>
.
<ul> <li><a href="#home">Home</a></li> <li><a href="#about">About</a></li> <li><a href="#kontak">Contact</a></li> <li><a href="#disclaimer">Disclaimer</a></li> </ul>
Kemudian, untuk membuatnya menjadi vertical nav bar, kita membutuhkan css:
ul { list-style-type: none; padding: 0; margin: 0; }
Keterangan:
- Hapus dulu style list
<li>
dengan kodelist-style-type
diisinone
Margin
danpadding
diset0
Vertical bar navigasi
Kode paling dasar untuk membuat navigasi vertikal adalah yang diatas. Tapi, tampilannya masih sangat sederhana saja. Hanya seperti ini:
Nanti akan kita buat menjadi seperti ini:
Keren kan? Berikut kode CSSnya beserta penjelasan:
ul { list-style-type: none; /* stylenya dihapus */ margin: 0; padding: 0; width: 200px; /* diatur panjangnya 200px */ background-color: #f1f1f1; /* diatur background warna */ } li a { /* ini memilih link a di dalam li */ display: block; /* tampilannya dibuat block */ color: #000; /*atur warna */ padding: 8px 16px; text-decoration: none; } li a.active { /* mengatur tampilan link yang aktif */ background-color: #5340ff; color: white; } li a:hover:not(.active) { /* mengatur hover link yang bukan aktif*/ background-color: #212121; color: white; }
Penjelasan kode ada di komentarnya ya.
Horizontal bar navigasi
Menunya masih sama, tapi tampilannya menjadi:
Kodenya adalah:
ul { list-style-type: none; margin: 0; padding: 0; width: 100%; overflow: hidden; /* untuk menyembunyikan konten yang melebihi box*/ background-color: #333; } li { float:left; /* terpenting biar horizontal */ } li a { display: block; color:white; padding: 8px 16px; text-decoration: none; } li a.active { background-color: #5340ff; color: white; } li a:hover:not(.active) { background-color: #212121; color: white; }
Secara garis besar kodenya sama dengan yang vertikal. Letak pembeda utama adalah penambahan kode li {float:left}
supaya posisi <li>
horizontal kiri.