Cara membuat: Menu navigasi bawah halaman responsif

Belajar cara membuat menu navigasi bawah halaman responsif menggunakan CSS dan JavaScript.

Navigasi bawah halaman responsif

Tahapkan ukuran jendela browser untuk melihat bagaimana menu navigasi responsif bekerja:

Coba sendiri

Buat navigasi bawah halaman yang responsif

Kerja tahap pertama - Tambahkan HTML:

<div class="navbar" id="myNavbar">
  <a href="#home">Home</a>
  <a href="#news">News</a>
  <a href="#contact">Contact</a>
  <a href="#about">About</a>
  <a href="javascript:void(0);" class="icon" onclick="myFunction()">☰</a>
</div>

Tautan dengan class="icon" digunakan untuk membuka dan menutup navigasi di layar kecil.

Kerja tahap kedua - Tambahkan CSS:

/* 将导航栏放在页面底部,并使其固定 */
.navbar {
  background-color: #333;
  overflow: hidden;
  position: fixed;
  bottom: 0;
  width: 100%;
}
/* 设置导航栏中链接的样式 */
.navbar a {
  float: left;
  display: block;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 17px;
}
/* Ganti warna tautan saat mouse diarahkan ke atas */
.navbar a:hover {
  background-color: #ddd;
  color: black;
}
/* Tambahkan warna latar belakang hijau untuk tautan yang aktif */
.navbar a.active {
  background-color: #04AA6D;
  color: white;
}
/* Sembunyikan tautan yang seharusnya dibuka dan ditutup di layar kecil. */
.navbar .icon {
  display: none;
}

Tambahkan media query:

/* Saat lebar layar kurang dari 600 piksel, sembunyikan semua tautan kecuali tautan pertama ("Home") dan tampilkan tautan yang membuka dan menutup navigasi (.icon). */
@media screen and (max-width: 600px) {
  .navbar a:not(:first-child) {display: none;}
  .navbar a.icon {
    float: right;
    display: block;
  }
}
/* Saat pengguna menekan ikon, gunakan JavaScript untuk menambah kelas "responsive" ke navigasi. */
Kelas ini membuat navigasi terlihat bagus di layar kecil (menampilkan tautan secara vertikal daripada horizontal) */
@media screen and (max-width: 600px) {
  .navbar.responsive a.icon {
    position: absolute;
    right: 0;
    bottom: 0;
  }
  .navbar.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
}

Tahap ketiga - Tambahkan JavaScript:

/* Saat pengguna menekan ikon, berpindah antara menambah dan menghapus kelas "responsive" di bawah navigasi */
function myFunction() {
  var x = document.getElementById("myNavbar");
  if (x.className === "navbar") {
    x.className += " responsive";
  } else {
    x.className = "navbar";
  }
}

Coba sendiri

Halaman yang berhubungan

Tutorial:Navigasi CSS