How to Build a Responsive Sidebar Navigation Menu

Responsive Sidebar Navigation Menu (HTML & CSS)

A responsive sidebar navigation menu is a great way to create a collapsible navigation layout that adapts to different screen sizes. This solution uses HTML and CSS only, with a simple hover effect for smooth interaction.

Step 1: HTML Code

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Responsive Sidebar Navigation Menu</title>
    <meta name="description" content="Learn how to create a responsive sidebar navigation menu using HTML and CSS. Includes collapsible menu design with smooth transitions.">
    <meta name="keywords" content="responsive sidebar menu, HTML CSS navigation, sidebar menu design, collapsible sidebar, CSS menu toggle">


</head>
<body>

    <!-- Sidebar Navigation -->
    <div class="sidebar">
        <a href="#">🏠 Home</a>
        <a href="#">📄 About</a>
        <a href="#">🛠 Services</a>
        <a href="#">📞 Contact</a>
    </div>

    <!-- Main Content Area -->
    <div class="main-content">
        <h1>Responsive Sidebar Navigation</h1>
        <p>Hover over the sidebar to expand it and explore the menu.</p>
    </div>

</body>
</html>

Step 2: CSS Code

* {
           margin: 0;
           padding: 0;
           box-sizing: border-box;
           font-family: Arial, sans-serif;
       }

       body {
           display: flex;
           height: 100vh;
           background-color: #f4f4f4;
       }

       /* Sidebar Styling */
       .sidebar {
           width: 250px;
           height: 100%;
           background-color: #333;
           position: fixed;
           left: 0;
           top: 0;
           padding-top: 20px;
           transition: width 0.3s ease-in-out;
       }

       .sidebar a {
           display: block;
           color: white;
           padding: 15px 20px;
           text-decoration: none;
           font-size: 18px;
           transition: background 0.3s;
       }

       .sidebar a:hover {
           background-color: #555;
       }

       /* Responsive Sidebar - Collapsed */
       .sidebar:hover {
           width: 300px;
       }

       /* Main Content */
       .main-content {
           margin-left: 250px;
           padding: 20px;
           flex: 1;
       }

       /* Responsive Design */
       @media (max-width: 768px) {
           .sidebar {
               width: 60px;
               overflow: hidden;
           }

           .sidebar:hover {
               width: 200px;
           }

           .sidebar a {
               text-align: center;
               font-size: 16px;
           }

           .main-content {
               margin-left: 60px;
           }
       }

Explanation

  1. Sidebar Structure

    • The sidebar is fixed on the left with a dark background.
    • It contains navigation links that change color when hovered over.
  2. Hover-to-Expand Effect

    • On larger screens, hovering expands the sidebar smoothly.
    • On smaller screens, it collapses to a thin strip.
  3. Responsive Design

    • Uses @media (max-width: 768px) to adjust layout for smaller screens.
    • Shrinks the sidebar and changes text alignment for better usability.

Leave a Reply

Your email address will not be published. Required fields are marked *

Scroll to Top