Sliding Menu

Beginner

A modern sliding menu with smooth animations, customizable directions, and responsive design. Perfect for mobile-first applications and space-efficient navigation.

Live Preview

Code Implementation

HTML
<div class="sliding-menu-demo">
  <div class="demo-content">
    <h2>Sliding Menu Demo</h2>
    <p>A versatile sliding menu component with multiple animation directions, overlay options, and responsive behavior. Ideal for mobile applications and modern web interfaces.</p>
    
    <div class="demo-controls">
      <h3>Menu Options:</h3>
      <div class="control-group">
        <div class="control-section">
          <label>Direction:</label>
          <div class="control-buttons">
            <button class="control-btn active" data-direction="left">Left</button>
            <button class="control-btn" data-direction="right">Right</button>
            <button class="control-btn" data-direction="top">Top</button>
            <button class="control-btn" data-direction="bottom">Bottom</button>
          </div>
        </div>
        <div class="control-section">
          <label>Style:</label>
          <div class="control-buttons">
            <button class="style-btn active" data-style="overlay">Overlay</button>
            <button class="style-btn" data-style="push">Push</button>
            <button class="style-btn" data-style="reveal">Reveal</button>
          </div>
        </div>
      </div>
    </div>
  </div>
  
  <div class="menu-container">
    <div class="app-header">
      <button class="menu-trigger" aria-label="Toggle menu">
        <span class="hamburger-icon">
          <span class="line"></span>
          <span class="line"></span>
          <span class="line"></span>
        </span>
      </button>
      <h1 class="app-title">Sliding Menu App</h1>
      <div class="header-actions">
        <button class="action-btn" aria-label="Search">
          <span class="icon">πŸ”</span>
        </button>
        <button class="action-btn" aria-label="Notifications">
          <span class="icon">πŸ””</span>
          <span class="badge">3</span>
        </button>
      </div>
    </div>
    
    <div class="main-content">
      <div class="content-section">
        <h2>Welcome to the App</h2>
        <p>This is the main content area. Click the menu button to open the sliding menu from different directions.</p>
        
        <div class="feature-cards">
          <div class="feature-card">
            <div class="card-icon">πŸ“±</div>
            <h3>Mobile First</h3>
            <p>Optimized for mobile devices with touch-friendly interactions.</p>
          </div>
          <div class="feature-card">
            <div class="card-icon">🎨</div>
            <h3>Customizable</h3>
            <p>Multiple animation styles and directions to choose from.</p>
          </div>
          <div class="feature-card">
            <div class="card-icon">⚑</div>
            <h3>Smooth</h3>
            <p>Hardware-accelerated animations for optimal performance.</p>
          </div>
        </div>
      </div>
    </div>
    
    <div class="sliding-menu left-menu overlay-style" role="navigation" aria-label="Main navigation">
      <div class="menu-header">
        <div class="user-profile">
          <div class="avatar">πŸ‘€</div>
          <div class="user-info">
            <div class="user-name">John Doe</div>
            <div class="user-email">john@example.com</div>
          </div>
        </div>
        <button class="menu-close" aria-label="Close menu">
          <span class="close-icon">βœ•</span>
        </button>
      </div>
      
      <div class="menu-content">
        <nav class="menu-nav">
          <ul class="menu-list">
            <li class="menu-item">
              <a href="#" class="menu-link active">
                <span class="menu-icon">🏠</span>
                <span class="menu-text">Home</span>
                <span class="menu-badge">New</span>
              </a>
            </li>
            <li class="menu-item">
              <a href="#" class="menu-link">
                <span class="menu-icon">πŸ“Š</span>
                <span class="menu-text">Dashboard</span>
              </a>
            </li>
            <li class="menu-item">
              <a href="#" class="menu-link">
                <span class="menu-icon">πŸ‘₯</span>
                <span class="menu-text">Users</span>
                <span class="menu-count">24</span>
              </a>
            </li>
            <li class="menu-item">
              <a href="#" class="menu-link">
                <span class="menu-icon">πŸ“</span>
                <span class="menu-text">Projects</span>
              </a>
            </li>
            <li class="menu-item">
              <a href="#" class="menu-link">
                <span class="menu-icon">πŸ“ˆ</span>
                <span class="menu-text">Analytics</span>
              </a>
            </li>
            <li class="menu-item">
              <a href="#" class="menu-link">
                <span class="menu-icon">πŸ’¬</span>
                <span class="menu-text">Messages</span>
                <span class="menu-count">5</span>
              </a>
            </li>
            <li class="menu-item">
              <a href="#" class="menu-link">
                <span class="menu-icon">πŸ“…</span>
                <span class="menu-text">Calendar</span>
              </a>
            </li>
            <li class="menu-item">
              <a href="#" class="menu-link">
                <span class="menu-icon">βš™οΈ</span>
                <span class="menu-text">Settings</span>
              </a>
            </li>
          </ul>
        </nav>
        
        <div class="menu-footer">
          <div class="menu-section">
            <h4 class="section-title">Quick Actions</h4>
            <div class="quick-actions">
              <button class="quick-action">
                <span class="action-icon">βž•</span>
                <span class="action-text">New Project</span>
              </button>
              <button class="quick-action">
                <span class="action-icon">πŸ“€</span>
                <span class="action-text">Export Data</span>
              </button>
            </div>
          </div>
          
          <div class="menu-section">
            <button class="logout-btn">
              <span class="logout-icon">πŸšͺ</span>
              <span class="logout-text">Logout</span>
            </button>
          </div>
        </div>
      </div>
    </div>
    
    <div class="menu-overlay"></div>
    
    <div class="menu-status">
      <div class="status-item">
        <span class="status-label">Direction:</span>
        <span class="status-value" id="currentDirection">Left</span>
      </div>
      <div class="status-item">
        <span class="status-label">Style:</span>
        <span class="status-value" id="currentStyle">Overlay</span>
      </div>
      <div class="status-item">
        <span class="status-label">Status:</span>
        <span class="status-value" id="menuStatus">Closed</span>
      </div>
    </div>
  </div>
</div>

Snippet Features

Responsive Design: Yes
Dark Mode Support: No
Category: navigation-menus
Difficulty Level: Beginner