Create a full screen Navigation Bar: In this article, you will learn how to create a full-screen navbar for your website. There are three methods to create a full screen overlay navigation bar which are listed below:
- From Left
- From top
- No animation- Just show
You will be required to create two divs. One for the overlay container and the other for the overlay content container.
Step 1: The first step is to create an HTML file.
< div id = "myNav" class = "overlay" >
< a href = "javascript:void(0)" class = "closebtn"
onclick = "closeNav()" >×
</ a >
< div class = "overlay-content" >
< a href = "#" >About</ a >
< a href = "#" >Services</ a >
< a href = "#" >Clients</ a >
< a href = "#" >Contact</ a >
</ div >
</ div >
< span onclick = "openNav()" >open</ span ></ div >
|
Step 2: Add CSS to the file.
<style>
overlay {
height : 100% ;
width : 0 ;
position : fixed ;
] z-index : 1 ;
left : 0 ;
top : 0 ;
background-color : rgb ( 0 , 0 , 0 );
background-color : rgba( 0 , 0 , 0 , 0.9 );
overflow-x: hidden ;
transition: 0.5 s;
}
].overlay-content {
position : relative ;
top : 25% ;
width : 100% ;
text-align : center ;
margin-top : 30px ;
}
.overlay a {
padding : 8px ;
text-decoration : none ;
font-size : 36px ;
color : #818181 ;
display : block ;
transition: 0.3 s;
}
.overlay a:hover,
.overlay a:focus {
color : #f1f1f1 ;
}
.overlay .closebtn {
position : absolute ;
top : 20px ;
right : 45px ;
font-size : 60px ;
}
@media screen and ( max-height : 450px ) {
.overlay a {
font-size : 20px
}
.overlay .closebtn {
font-size : 40px ;
top : 15px ;
right : 35px ;
}
}
</style>
|
Step 3: In the final step add JavaScript to the files.
<script>
function openNav() {
document.getElementById( "myNav" ).style.width = "100%" ;
}
function closeNav() {
document.getElementById( "myNav" ).style.width = "0%" ;
}
function openNav() {
document.getElementById( "myNav" ).style.display = "block" ;
}
function closeNav() {
document.getElementById( "myNav" ).style.display = "none" ;
}
</script>
|
Example 1: This example creating the Full Screen Overlay Navigation Bar from left.
<!DOCTYPE html>
< html >
< head >
< meta name = "viewport" content=" width = device -width,
initial-scale = 1 ">
< style >
.overlay {
height: 100%;
width: 0;
position: fixed;
top: 0;
left: 0;
background-color: #1a6e1a;
overflow-x: hidden;
transition: 1.0s;
}
.overlay-content {
position: relative;
top: 25%;
width: 100%;
text-align: center;
}
.overlay a {
padding: 10px;
text-decoration: none;
font-size: 40px;
color: white;
display: block;
transition: 0.3s;
}
.overlay a:hover,
.overlay a:focus {
color: black;
}
.overlay .closebtn {
position: absolute;
top: 10px;
right: 35px;
font-size: 70px;
}
</ style >
</ head >
< body >
< div id = "myNav" class = "overlay" >
< a href = "javascript:void(0)"
class = "closebtn" onclick = "closeNav()" >
×
</ a >
< div class = "overlay-content" >
< a href = "#" >About</ a >
< a href = "#" >Practice</ a >
< a href = "#" >Courses</ a >
< a href = "#" >Contact</ a >
</ div >
</ div >
< span style = "font-size:35px;cursor:pointer"
onclick = "openNav()" >
≡
</ span >
< h2 >GeeksForGeeks</ h2 >
< p >
Click on the nav bar icon
to see full screen overlay:
</ p >
< script >
function openNav() {
document.getElementById(
"myNav").style.width = "100%";
}
function closeNav() {
document.getElementById(
"myNav").style.width = "0%";
}
</ script >
</ body >
</ html >
|
Output:
Example 2: This example creating the Full-Screen Overlay Navigation Bar from the top.
<!DOCTYPE html>
< html >
< head >
< meta name = "viewport" content=" width = device -width,
initial-scale = 1 ">
< style >
.overlay {
height: 0%;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: #1a6e1a;
overflow-y: hidden;
transition: 1.0s;
}
.overlay-content {
position: relative;
top: 25%;
width: 100%;
text-align: center;
}
.overlay a {
padding: 10px;
text-decoration: none;
font-size: 40px;
color: white;
display: block;
transition: 0.3s;
}
.overlay a:hover,
.overlay a:focus {
color: black;
}
.overlay .closebtn {
position: absolute;
top: 10px;
right: 35px;
font-size: 70px;
}
</ style >
</ head >
< body >
< div id = "myNav" class = "overlay" >
< a href = "javascript:void(0)"
class = "closebtn" onclick = "closeNav()" >
×
</ a >
< div class = "overlay-content" >
< a href = "#" >About</ a >
< a href = "#" >Practice</ a >
< a href = "#" >Courses</ a >
< a href = "#" >Contact</ a >
</ div >
</ div >
< span style = "font-size:35px;cursor:pointer"
onclick = "openNav()" >
≡
</ span >
< h2 >GeeksForGeeks</ h2 >
< p >
Click on the nav bar icon
to see full screen overlay:
</ p >
< script >
function openNav() {
document.getElementById(
"myNav").style.height = "100%";
}
function closeNav() {
document.getElementById(
"myNav").style.height = "0%";
}
</ script >
</ body >
</ html >
|
Output:
Example 3: This example creating the Full-Screen Overlay Navigation Bar without animation.
<!DOCTYPE html>
< html >
< head >
< meta name = "viewport" content =
"width=device-width, initial-scale=1" >
< style >
.overlay {
height: 100%;
width: 100%;
display: none;
position: fixed;
top: 0;
left: 0;
background-color: #1a6e1a;
}
.overlay-content {
position: relative;
top: 25%;
width: 100%;
text-align: center;
}
.overlay a {
padding: 10px;
text-decoration: none;
font-size: 40px;
color: white;
display: block;
transition: 0.3s;
}
.overlay a:hover,
.overlay a:focus {
color: black;
}
.overlay .closebtn {
position: absolute;
top: 10px;
right: 35px;
font-size: 70px;
}
</ style >
</ head >
< body >
< div id = "myNav" class = "overlay" >
< a href = "javascript:void(0)"
class = "closebtn" onclick = "closeNav()" >
×
</ a >
< div class = "overlay-content" >
< a href = "#" >About</ a >
< a href = "#" >Practice</ a >
< a href = "#" >Courses</ a >
< a href = "#" >Contact</ a >
</ div >
</ div >
< span style = "font-size:35px;cursor:pointer"
onclick = "openNav()" >
≡
</ span >
< h2 >GeeksForGeeks</ h2 >
< p >
Click on the nav bar icon to
see full screen overlay:
</ p >
< script >
function openNav() {
document.getElementById(
"myNav").style.display = "block";
}
function closeNav() {
document.getElementById(
"myNav").style.display = "none";
}
</ script >
</ body >
</ html >
|
Output: