Side Nav
Basic CSS Side Nav
by Roberto Apasajja
HTML
<div id="navOpen" class="mNav"> <a href="#">Home</a>
<a href="#">Portfolio</a>
<a href="#">Blog</a>
<a href="#">About</a>
<a href="#">Contact</a>
</div>
<div class="content">
<div class="mHeader">
<a href="#navOpen" class="open">></a>
<a href="#" class="close"><</a>
<h1>Neato CSS Slider</h1>
</div>
</div>
CSS
* {
box-sizing:border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
}
body {
margin:0px;
padding:0px;
}
.content {
width:100% transition:width 1s ease;
-webkit-transition:width 1s ease;
-moz-transition:width 1s ease;
float:right;
position:absolute;
}
.mHeader {
display:block;
position:fixed;
border-bottom:2px solid #c00;
width:100%;
left:0%;
height:50px;
transition:all 1s ease;
-webkit-transition:all 1s ease;
-moz-transition:all 1s ease;
background-color:#F33;
text-align:center;
}
.mHeader a {
position:absolute;
text-decoration:none;
left:12px;
top:6px;
color:white;
font-weight:bold;
font-size:32px;
}
.mHeader h1 {
display:inline-block;
font-size:24px;
font-weight:bold;
color:white;
}
.close {
display:none;
}
.mNav {
display:block;
width:0px;
overflow:hidden;
position:fixed;
top:0px;
left:0px;
height:100%;
transition:width 1s ease;
-webkit-transition:width 1s ease;
-moz-transition:width 1s ease;
background-color:#F33;
}
.mNav a {
display:block;
color:white;
padding:15px;
border-bottom:1px solid #C00;
text-decoration:none;
font-weight:bold;
font-family:arial;
}
.mNav a:hover {
background-color:#C00;
}
#navOpen:target {
width:30%;
}
#navOpen:target + .content {
width:70%;
}
#navOpen:target + .content .mHeader {
width:70%;
left:30%;
}
#navOpen:target + .content .mHeader .open {
display:none;
}
#navOpen:target + .content .mHeader .close {
display:block;
}