I want to make 'menu icon' with css just like in this link: http://www.w3schools.com/howto/tryit.asp?filename=tryhow_css_menu_icon_js, But I don't want to use javacript in my code.
This is the HTML code:
<body>
<input type="checkbox" id="showblock" />
<div id="mySidenav" class="sidenav"> <!-- CSSnya di 2691 -->
<img class="logo1" src="../img/logo1.png"><br><br>
<a href="#">Home</a>
<a href="#">About</a>
<a href="#">Contact</a>
</div>
<div id ="contoh" class="content-section-b">
<div class="mobiletoggle" >
<label for="showblock" class="bar1"></label>
<label for="showblock" class="bar2"></label>
<label for="showblock" class="bar3"></label>
</div>
</body>
and CSS code:
.mobiletoggle{ float:right;}
.mobiletoggle label{ display: block; cursor: pointer; }
#showblock{
display: none;
}
.bar1, .bar2, .bar3 {
width: 30px;
height: 3px;
background-color: #333;
margin: 6px 0;
transition: 0.4s;
}
.change .bar1 {
-webkit-transform: rotate(-45deg) translate(-9px, 6px) ;
transform: rotate(-45deg) translate(-9px, 6px) ;
}
.change .bar2 {opacity: 0;}
.change .bar3 {
-webkit-transform: rotate(45deg) translate(-8px, -8px) ;
transform: rotate(45deg) translate(-8px, -8px) ;
}
@media screen and (min-width:768px){.mobiletoggle{ display:none;}}
@media screen and (max-width:767px) {
.sidenav{
width:0px;
height: 100%;
padding-top: 3%;
background-color: #fff;
opacity: 0.9;
}
#showblock:checked + .sidenav {
width: 85%;
transition: 0.8s;
}
#showblock:checked + .bar1 {
-webkit-transform: rotate(-45deg) translate(-9px, 6px) ;
transform: rotate(-45deg) translate(-9px, 6px) ;
}
#showblock:checked + .bar2 {opacity: 0;}
#showblock:checked + .bar3 {
-webkit-transform: rotate(45deg) translate(-8px, -8px) ;
transform: rotate(45deg) translate(-8px, -8px) ;
}}
I don't know how to use .change just with CSS like in the example from the link (it used javascript), so I used #showblock:checked + .bar to manipulate the animation. How do I use .change with CSS?