Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

CSS और JavaScript से रिस्पॉन्सिव बॉटम नेविगेशन मेनू कैसे बनाएं?


रिस्पॉन्सिव बॉटम नेविगेशन मेनू

CSS और JavaScript के साथ रिस्पॉन्सिव बॉटम नेविगेशन मेनू बनाने का कोड:

उदाहरण

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>बॉटम नेविगेशन</title>
  <style>
    body {
      margin: 0px;
      margin-top: 10px;
      padding: 0px;
    }
    nav {
      position: fixed;
      bottom: 0;
      width: 100%;
      background-color: rgb(39, 39, 39);
      overflow: auto;
      height: auto;
    }
    .links {
      display: inline-block;
      text-align: center;
      padding: 14px;
      color: rgb(178, 137, 253);
      text-decoration: none;
      font-size: 17px;
    }
    .links:hover {
      background-color: rgb(100, 100, 100);
    }
    .selected {
      background-color: rgb(0, 18, 43);
    }
    .hamburger {
      color: white;
      font-weight: bolder;
      display: none;
    }
    @media screen and (max-width: 600px) {
      nav a:not(:first-child) {
        display: none;
      }
      nav a.hamburger {
        float: right;
        display: block;
        padding: 12px;
      }
      nav.openNav a.hamburger {
        position: absolute;
        right: 0;
        bottom: 0;
      }
      nav.openNav a {
        float: none;
        display: block;
        text-align: center;
      }
    }
  </style>
</head>
<body>
  <nav class="bottomNav">
    <a class="links selected" href="#">Home</a>
    <a class="links" href="#">Login</a>
    <a class="links" href="#">Register</a>
    <a class="links" href="#">Contact Us</a>
    <a class="links" href="#">More Info</a>
    <a class="hamburger">☰</a>
  </nav>
  <div>
    <h1>बॉटम नेविगेशन मेनू</h1>
  </div>
  <script>
    function toggleNav() {
      var x = document.getElementsByTagName("nav")[0];
      if (x.className === "bottomNav") {
        x.className += " openNav";
      } else {
        x.className = "bottomNav";
      }
    }
    document.querySelector(".hamburger").addEventListener("click", toggleNav);
  </script>
</body>
</html>

आउटपुट

  • डेस्कटॉप पर: सभी लिंक्स हॉरिजॉन्टल दिखते हैं
  • मोबाइल (≤600px) पर: केवल पहला लिंक और हैमबर्गर आइकन (☰) दिखता है
  • हैमबर्गर क्लिक करने पर: सभी लिंक्स वर्टिकल सूची में खुलते हैं

मुख्य तकनीकें

  • position: fixed; bottom: 0 - बॉटम पर फिक्स्ड
  • @media (max-width: 600px) - मोबाइल ब्रेकपॉइंट
  • :not(:first-child) - मोबाइल पर लिंक्स छुपाएं
  • JavaScript से openNav क्लास टॉगल करके मेनू खोलें/बंद करें

आधुनिक सुधार

  • classList.toggle('openNav') उपयोग करें
  • ARIA विशेषताएं जोड़ें (aria-expanded, aria-controls)
  • फोकस ट्रैपिंग और ESC की सपोर्ट जोड़ें
  1. CSS और JavaScript से रिस्पॉन्सिव स्लाइडशो गैलरी कैसे बनाएं? CSS और JavaScript से रिस्पॉन्सिव स्लाइडशो गैलरी कैसे बनाएं?

    CSS और JavaScript से रिस्पॉन्सिव स्लाइडशो गैलरी बनाने का कोड निम्नलिखित है:उदाहरण<!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1" /> <style> * {    box-sizing: border-box; } .Slide {   &

  1. CSS और JavaScript से रिस्पॉन्सिव स्लाइडशो कैसे बनाएं? CSS और JavaScript से रिस्पॉन्सिव स्लाइडशो कैसे बनाएं?

    CSS और JavaScript से रिस्पॉन्सिव स्लाइडशो बनाने का कोड निम्नलिखित है:उदाहरण<!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1" /> <style> * {    box-sizing: border-box; } .Slide {    d

  1. HTML और CSS से रिस्पॉन्सिव नेविगेशन मेनू (लॉगिन फॉर्म के साथ) कैसे बनाएं? HTML और CSS से रिस्पॉन्सिव नेविगेशन मेनू (लॉगिन फॉर्म के साथ) कैसे बनाएं?

    रिस्पॉन्सिव नेविगेशन बार में लिंक और दाईं ओर एक लॉगिन फॉर्म होता है। मोबाइल पर (<977px) लिंक स्टैक हो जाते हैं और फॉर्म फुल-विड्थ हो जाता है जिसमें बॉटम बॉर्डर इनपुट होते हैं। उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport con