Code Details
Sidebar menu
Responsive sidebar menu using html,css,js
Web Development
Responsive sidebar menu
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Code Writer</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.2/css/all.min.css">
<link rel="stylesheet" href="style.css">
</head>
<body>
<section class="home-section">
<nav id="sidebar">
<ul>
<li class="logo-container">
<span class="logo">Code Writer</span>
<button class="side-btn"><i class="fa-solid fa-bars-staggered"></i></button>
</li>
<li>
<a href="dashboard.html">
<i class="fa-solid fa-table-columns"></i>
<span class="nav-text">Dashboard</span>
</a>
</li>
<li>
<a href="contact.html">
<i class="fa-solid fa-phone-volume"></i>
<span class="nav-text">Contact</span>
</a>
</li>
<li>
<a href="blog.html">
<i class="fa-solid fa-blog"></i>
<span class="nav-text">Blog</span>
</a>
</li>
<li>
<a href="profile.html">
<i class="fa-solid fa-user"></i>
<span class="nav-text">Profile</span>
</a>
</li>
</ul>
</nav>
<main>
<div class="box-container">
<h1>Home</h1>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Vitae voluptatem eligendi aliquid.</p>
</div>
<div class="box-container">
<h1>About</h1>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Harum sit, praesentium quasi.</p>
</div>
<div class="box-container">
<h1>Explore Now</h1>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Cumque magnam asperiores et.</p>
</div>
</main>
</section>
<script src="script.js"></script>
</body>
</html>
:root {
--sidebar-color: #2c3e50;
--color: white;
--border: 1px solid #e0e0e0;
}
.home-section {
min-height: 100vh;
min-width: 100vw;
display: grid;
grid-template-columns: auto 1fr;
}
#sidebar {
width: 250px;
height: 100vh;
background: var(--sidebar-color);
color: var(--color);
padding: 20px 0;
position: fixed;
left: 0;
top: 0;
transition: all 0.3s ease;
}
#sidebar ul {
list-style: none;
padding: 0;
margin: 0;
}
#sidebar ul li:first-child {
margin-bottom: 1.5rem;
font-size: 30px;
font-weight: 700;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 20px;
}
#sidebar ul li {
color: var(--color);
display: flex;
align-items: center;
gap: 15px;
padding: 12px;
font-size: 20px;
}
#sidebar ul li a {
color: var(--color);
text-decoration: none;
display: flex;
align-items: center;
width: 100%;
}
#sidebar ul li a:hover {
background-color: rgba(255, 255, 255, 0.2);
color: var(--color);
border-radius: 5px;
}
.side-btn {
margin-left: auto;
padding: 5px;
font-size: 25px;
cursor: pointer;
background: transparent;
border: none;
color: var(--color);
}
.side-btn:hover {
background-color: rgba(255, 255, 255, 0.2);
color: var(--color);
border-radius: 5px;
}
/* Collapsed sidebar */
#sidebar.move-sidebar {
width: 85px;
padding: 16px;
}
#sidebar.move-sidebar .logo,
#sidebar.move-sidebar .nav-text {
display: none;
}
main {
margin-left: 250px;
padding: 20px;
transition: all 0.3s ease;
}
main.move-main {
margin-left: 85px;
}
.box-container {
border: var(--border);
border-radius: 10px;
padding: 2rem;
margin-bottom: 2rem;
}
.box-container h1 {
margin-top: 1rem;
}
document.addEventListener('DOMContentLoaded', function() {
const sideBtn = document.querySelector('.side-btn');
const sidebar = document.getElementById('sidebar');
const main = document.querySelector('main');
sideBtn.addEventListener('click', function() {
sidebar.classList.toggle('move-sidebar');
main.classList.toggle('move-main');
});
});
Aj Designer