چگونه ایجاد می‌کنیم: منو ناوبری کوچک در جابجایی

آموزش نحوه استفاده از CSS و JavaScript برای تغییر اندازه ناوبری در جابجایی.

به طور مستقیم امتحان کنید

چگونه ناوبری را در جابجایی کوچک می‌کنیم

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

ایجاد ناوبری:

<div id="navbar">
  <a href="#default" id="logo">CompanyLogo</a>
  <div id="navbar-right">
    <a class="active" href="#home">Home</a>
    <a href="#contact">Contact</a>
    <a href="#about">About</a>
  </div>
</div>

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

تنظیمات استایل ناوبری:

/* ایجاد ناوبری چسبنده/ثابت */
#navbar {
  overflow: hidden;
  background-color: #f1f1f1;
  padding: 90px 10px; /* پادینگ داخلی بزرگتر، در جابجایی کوچک می‌شود (با استفاده از JS) */
  transition: 0.4s; /* اضافه کردن اثر انتقال هنگام کاهش پادینگ داخلی */
  position: fixed; /* ناوبری چسبنده/ثابت */
  width: 100%;
  top: 0; /* در بالا */
  z-index: 99;
}
/* تنظیمات استایل لینک‌های ناوبری */
#navbar a {
  float: left;
  color: black;
  text-align: center;
  padding: 12px;
  text-decoration: none;
  font-size: 18px;
  line-height: 25px;
  border-radius: 4px;
}
/* تنظیمات استایل لوگوی */
#navbar #logo {
  font-size: 35px;
  font-weight: bold;
  transition: 0.4s;
}
/* استایل لینک‌ها در حالت ماوس‌ورس قرار می‌گیرد */
#navbar a:hover {
  background-color: #ddd;
  color: black;
}
/* تنظیم استایل لینک‌های فعال/حال حاضر */
#navbar a.active {
  background-color: dodgerblue;
  color: white;
}
/* برخی از لینک‌ها در سمت راست نمایش داده می‌شوند */
#navbar-right {
  float: right;
}
/* بهبود قابلیت پاسخگویی - در صفحه‌هایی که عرض کمتر از 580 پیکسل دارند، ناوبری به صورت عمودی به جای افقی نمایش داده می‌شود */
@media screen and (max-width: 580px) {
  #navbar {
    padding: 20px 10px !important; /* از !important استفاده می‌شود تا اطمینان حاصل شود که JavaScript در صفحه‌های کوچک پوشش نمی‌دهد */
  }
  #navbar a {
    float: none;
    display: block;
    text-align: left;
  }
  #navbar-right {
    float: none;
  }
}

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

// زمانی که کاربر از بالا به پایین در 80 پیکسل از بالای سند حرکت می‌کند، اندازه حاشیه‌های ناوبری و اندازه فونت نشانگر را تنظیم می‌کند
window.onscroll = function() {scrollFunction()};
function scrollFunction() {
  if (document.body.scrollTop > 80 || document.documentElement.scrollTop > 80) {
    document.getElementById("navbar").style.padding = "30px 10px";
    document.getElementById("logo").style.fontSize = "25px";
  }
    document.getElementById("navbar").style.padding = "80px 10px";
    document.getElementById("logo").style.fontSize = "35px";
  }
}

به طور مستقیم امتحان کنید