I have created a header with position: fixed and below that I added a logo using image replacement. However, when I scroll down, the image moves over the header rather than under it.
How can I get the fixed header to always be on top (i.e. force the images to move under it)?
Here is part of my code:
HTML
<header>
<nav>
<ul>
<li>Home</li>
<li>About</li>
<li>Work</li>
</ul>
</nav>
</header>
<div class="banner">
<h1><img src="imgs\logo.png" />Jackle</h1>
<h3>We design and create.</h3>
</div>
<img src="" class="representationBannerPic">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Veritatis recusandae ullam dolores sint eligendi voluptatibus incidunt esse vero totam aspernatur. Iste quae molestias sed enim corrupti rerum nam culpa asperiores.</p>
CSS
header
{
background-color: black;
width: 100%;
height: 47px;
color: white;
position: fixed;
}
.banner
{
background-color: #3b97b1;
background-color: #5fa1b4;
height: 247px;
width: 100%;
}
.banner h1
{
text-align: center;
position: relative;
top: 100px;
text-indent: -9999px;
}
.banner h1 img
{
position: absolute;
top: 50%;
left: 50%;
width: 200px;
height: 60px;
margin-top: -30px; /* Half the height */
margin-left: -100px; /* Half the width */
padding-top: 20px;
}
If you need to see more, the entire code can be found here.
Add the following rule to your header style:
header
{
/* ... */
z-index: 99;
}
The z-index property specifies the overlay order of positioned elements. Elements with a greater z-index will therefore always be infront of elements with a lower z-index. Setting the z-index to a value greater than (or even equal to) 0 sets that element to be on top of non-positioned elements with no z-index specified. You could always set it to a value lower than 99, but, it is common practice to avoid potential clashes with other positioned elements.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With