How to create: mobile navigation menu

Learn how to create a top navigation menu for smartphones/tablets using CSS and JavaScript.

Mobile navigation bar

Vertical (recommended):

آزمایش شخصی کنید

Create a mobile navigation menu

Step 1 - Add HTML:

<!-- Load icon library to display hamburger menu (three bars) on small screens -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<!-- Top Navigation Menu -->
<div class="topnav">
  <a href="#home" class="active">Logo</a>
  <!-- Navigation links (hidden by default) -->
  <div id="myLinks">
    <a href="#news">News</a>
    <a href="#contact">Contact</a>
    <a href="#about">About</a>
  </div>
  <!-- "منو هامبرگر" / "آیکون افقی" برای تغییر وضعیت نمایش لینک‌های ناوبری -->
  <a href="javascript:void(0);" class="icon" onclick="myFunction()">
    <i class="fa fa-bars"></i>
  </a>
</div>

مرحله دوم - اضافه کردن CSS:

/* تنظیم استایل منوی ناوبری */
.topnav {
  overflow: hidden;
  background-color: #333;
  position: relative;
}
/* لینک‌های داخل منوی ناوبری را پنهان کنید (به جز لوگوی/صفحه اصلی) */
.topnav #myLinks {
  display: none;
}
/* تنظیم استایل لینک‌های منوی ناوبری */
.topnav a {
  رنگ: سفید;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 17px;
  display: block;
}
/* تنظیم استایل منو هامبرگر */
.topnav a.icon {
  background: black;
  display: block;
  position: absolute;
  right: 0;
  top: 0;
}
/* در حالت قرارگیری ماوس، رنگ پس‌زمینه خاکستری اضافه کنید */
.topnav a:hover {
  رنگ پس‌زمینه: #ddd;
  رنگ: سیاه;
}
/* تنظیم استایل لینک‌های فعال (یا صفحه اصلی/لوگوی) */
.active {
  رنگ پس‌زمینه: #04AA6D;
  رنگ: سفید;
}

مرحله سوم - اضافه کردن JavaScript:

/* هنگام کلیک بر روی منو هامبرگر/آیکون افقی، وضعیت نمایش لینک‌های منوی ناوبری را تغییر دهید و پنهان کنید */
function myFunction() {
  var x = document.getElementById("myLinks");
  if (x.style.display === "block") {
    x.style.display = "none";
  } else {
    x.style.display = "block";
  }
}

آزمایش شخصی کنید

صفحات مرتبط

آموزش‌ها:نوار ابزار CSS

آموزش‌ها:چگونه ایجاد شود: نوار ابزار بالای پاسخگو