HTML CSS Navbar Responsive
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Responsive Navbar with Font Awesome</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css">
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: Arial, sans-serif;
}
.navbar {
background-color: #2c3e50;
padding: 15px 20px;
display: flex;
justify-content: space-between;
align-items: center;
}
.navbar .logo {
color: #fff;
font-size: 24px;
font-weight: bold;
}
.navbar .nav-links {
display: flex;
list-style: none;
}
.navbar .nav-links li {
margin-left: 20px;
}
.navbar .nav-links a {
color: #fff;
text-decoration: none;
font-size: 16px;
display: flex;
align-items: center;
}
.navbar .nav-links a i {
margin-right: 8px;
}
.navbar .nav-links a:hover {
color: #3498db;
}
.menu-toggle {
display: none;
}
.menu-toggle-label {
display: none;
color: #fff;
font-size: 24px;
cursor: pointer;
}
@media (max-width: 768px) {
.menu-toggle-label {
display: block;
}
.navbar .nav-links {
display: none;
width: 100%;
position: absolute;
top: 60px;
left: 0;
background-color: #2c3e50;
flex-direction: column;
padding: 20px;
}
.menu-toggle:checked ~ .nav-links {
display: flex;
}
.navbar .nav-links li {
margin: 10px 0;
}
}
</style>
</head>
<body>
<nav class="navbar">
<div class="logo">MySite</div>
<input type="checkbox" id="menu-toggle" class="menu-toggle">
<label for="menu-toggle" class="menu-toggle-label"><i class="fas fa-bars"></i></label>
<ul class="nav-links">
<li><a href="#home"><i class="fas fa-home"></i> Home</a></li>
<li><a href="#about"><i class="fas fa-user"></i> About</a></li>
<li><a href="#services"><i class="fas fa-cogs"></i> Services</a></li>
<li><a href="#contact"><i class="fas fa-envelope"></i> Contact</a></li>
</ul>
</nav>
</body>
</html>