I have been trying to make my header responsive and am really struggling with the 'SERVICES' dropdown section when it is in the collapsible menu. Not only does it look terrible with the 'static' position but I cant figure out another way of doing it.
I also am having an issue that when you click the 'SERVICES' button while below 768px it is automatically selecting the first option ('RAIL').
I hope this makes sense. I have linked the codepen below.
enter code here Codepen
header {
background: linear-gradient(to right, #212529 0%, #495057 100%);
display: inline-flex;
justify-content: space-between;
align-items: center;
position: sticky;
width: 100%;
height: 80px;
padding: 10px 2% 10px 2%;
margin: 0;
box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
z-index: 100;
}
header ul {
margin-block-end: 0;
}
header li, a {
font-weight: 300;
font-size: 1em;
color:#ced4da;
text-decoration: none;
}
.logo-header {
max-height: 50px;
cursor: pointer;
padding: 0 15px;
}
.nav-links {
display: flex;
justify-content: space-between;
align-items: center;
}
.nav-links li {
display: inline-block;
padding: 0px 40px;
}
.nav-links li a {
transition: all 0.3s ease 0s;
}
.nav-links li a:hover,
.nav-links li a:active {
font-weight: 500;
transition: all 0.3s ease 0s;
color: #f8f9fa;
text-decoration: underline;
text-underline-offset: 5px;
}
.social-icons {
display: inline-block;
padding: 0px 15px;
}
.social-icons a {
margin: 0px 20px;
transition: all 0.3s ease 0s;
}
.social-icons a:hover {
transition: all 0.3s ease 0s;
color:#f8f9fa;
}
.sticky {
position: fixed;
top: 0;
width: 100%;
z-index: 100;
}
.sticky + .services-title h1 {
padding-top: 80px;
}
.sticky + .main-home {
padding-top: 80px;
}
.sticky + .container-contact {
padding-top: 80px;
}
.dropbtn {
background-color: inherit;
color: #ced4da;
padding: 0 40px;
font-size: 16px;
border: none;
cursor: pointer;
height: 80px;
}
.dropbtn:hover{
font-weight: 500;
transition: all 0.3s ease 0s;
color: #f8f9fa;
text-decoration: underline;
text-underline-offset: 5px;
}
.dropdown:hover .dropdown-content {
display: block;
}
.dropdown-content {
position: absolute;
background:#343a40;
min-width: 160px;
overflow: auto;
box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
text-align: center;
display: none;
}
.dropdown-content a {
padding: 12px 16px;
display: block;
font-weight: 300;
font-size: 1em;
color:#ced4da;
text-decoration: none;
}
.dropdown-content a:hover {
font-weight: 500;
transition: all 0.3s ease 0s;
color: #f8f9fa;
text-decoration: underline;
text-underline-offset: 5px;
}
#home-header {
position: fixed;
top: 0;
left: 0;
}
#nav-toggle {
position: absolute;
top: -100px;
}
nav .icon-burger {
display: none;
position: absolute;
right: 5%;
top: 50%;
transform: translateY(-50%);
}
nav .icon-burger .line {
width: 30px;
height: 5px;
background: #fff;
margin: 5px;
}
/*=====media queries=======*/
@media only screen and (max-width: 768px) {
.nav-links {
justify-content: space-evenly;
float: none;
position: fixed;
z-index: 9;
left: 0;
right: 0;
top: 80px;
bottom: 100%;
width: 100%;
max-height: 200px;
flex-direction: column;
background-color: rgba(0, 0, 0, 0.7);
overflow: hidden;
transition: all .5s ease-in-out;
}
header :checked ~ .nav-links {
bottom: 0;
}
.nav-links .dropbtn {
padding: 0;
width: 100%;
height: 20px;
}
.dropdown-content {
position: static;
width: 100%;
background-color: rgba(0, 0, 0, 0);
}
nav .icon-burger {
display: block;
}
nav :checked ~ .icon-burger .line:nth-child(1) {
transform: translateY(10px) rotate(225deg);
transition: all .5s ease-in-out;
}
nav :checked ~ .icon-burger .line:nth-child(3) {
transform: translateY(-10px) rotate(-225deg);
transition: all .5s ease-in-out;
}
nav :checked ~ .icon-burger .line:nth-child(2) {
opacity: 0;
transition: all .5s ease-in-out;
}
}
/* Medium devices (landscape tablets, 769px to 1024px) */
@media only screen and (max-width: 1024px) {
header {
padding-right: 0;
}
#social-icons-header a {
display:none;
}
}
<header id="home-header" class="main-header-fixed">
<img class="logo-header" src="Images/Logo grey Transparent.png" alt="Kompact Production Logo">
<nav class="main-nav">
<input id="nav-toggle" type="checkbox">
<ul class=" nav-links">
<li><a href="Kompact Home.html">HOME</a></li>
<div class="dropdown">
<button class="dropbtn">SERVICES</button>
<div class="dropdown-content">
<a href="Kompact Rail Services.html">RAIL</a>
<a href="Kompact Event Services.html">EVENTS</a>
</div>
</div>
<li><a href="Kompact Portfolio.html">PORTFOLIO</a></li>
<li><a href="Kompact Contact Us.html">CONTACT US</a></li>
</ul>
<label for="nav-toggle" class="icon-burger">
<div class="line"></div>
<div class="line"></div>
<div class="line"></div>
</label>
</nav>
<div class="social-icons" id="social-icons-header">
<a href="#"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
class="bi bi-facebook" viewBox="0 0 16 16">
<path
d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z" />
</svg></a>
<a href="#"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
class="bi bi-instagram" viewBox="0 0 16 16">
<path
d="M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 0 0-1.417.923A3.927 3.927 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 0 0-.923-1.417A3.911 3.911 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 0 1-.92-.598 2.48 2.48 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92zm-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217zm0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334z" />
</svg></a>
<a href="#"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
class="bi bi-linkedin" viewBox="0 0 16 16">
<path
d="M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854V1.146zm4.943 12.248V6.169H2.542v7.225h2.401zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248-.822 0-1.359.54-1.359 1.248 0 .694.521 1.248 1.327 1.248h.016zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016a5.54 5.54 0 0 1 .016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225h2.4z" />
</svg></a>
</div>
</header>