JSFiddle - React, Tailwind, and code Playground
by kougiland
HTML
<div class="menu">
<input type="checkbox" id="menu-collapsed" name="menu-collapsed" checked="checked" />
<div class="menu-content menu-content-1">
<h2>CSS only 3D fold menu</h2>
<ul>
<li>lorem ipsum</li>
<li>dolor sit amet</li>
<li>consetetur sadipscing</li>
<li>elitr</li>
<li>sed diam nonumy</li>
<li>eirmod tempor</li>
<li>invidunt ut</li>
<li>labore et dolore</li>
</ul>
</div>
<div class="menu-content menu-content-2">
<h2>CSS only 3D fold menu</h2>
<ul>
<li>lorem ipsum</li>
<li>dolor sit amet</li>
<li>consetetur sadipscing</li>
<li>elitr</li>
<li>sed diam nonumy</li>
<li>eirmod tempor</li>
<li>invidunt ut</li>
<li>labore et dolore</li>
</ul>
</div>
<div class="menu-switch">
<label class="collapse" for="menu-collapsed">«</label>
<label class="rise" for="menu-collapsed">»</label>
</div>
</div>
CSS
@import url('http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300');
@import url('http://fonts.googleapis.com/css?family=Handlee');
html,
body {
margin: 0;
padding: 0;
border: 0;
width: 100%;
height: 100%;
overflow: hidden;
background-color: #000;
font-family: 'Open Sans Condensed', sans-serif;
color: rgba(252,251,250,0.9);
}
.menu {
-webkit-perspective: 1000px;
-moz-perspective: 1000px;
-ms-perspective: 1000px;
-o-perspective: 1000px;
perspective: 1000px;
transition: background-color .3s linear;
height:96%;
padding:2% 0 2% 0;
}
.menu .menu-content {
height:99%;
-webkit-transition-duration: 1s;
-moz-transition-duration: 1s;
-ms-transition-duration: 1s;
-o-transition-duration: 1s;
transition-duration: 1s;
-webkit-transform: translate3d(0px,0px,0px) rotateY(0deg);
-moz-transform: translate3d(0px,0px,0px) rotateY(0deg);
-ms-transform: translate3d(0px,0px,0px) rotateY(0deg);
-o-transform: translate3d(0px,0px,0px) rotateY(0deg);
transform: translate3d(0px,0px,0px) rotateY(0deg);
-webkit-transform-style: preserve-3d;
-moz-transform-style: preserve-3d;
-ms-transform-style: preserve-3d;
-o-transform-style: preserve-3d;
transform-style: preserve-3d;
float: left;
width: 6em;
overflow: hidden;
white-space: nowrap;
}
.menu .menu-content h2 {
font-family: 'Handlee', cursive;
font-size: 1em;
font-weight: normal;
margin-left: 1em;
}
.menu .menu-content ul {
list-style: none;
}
.menu .menu-content-1 {
-webkit-transform-origin: right center;
}
.menu .menu-content-2 {
-webkit-transform-origin: left center;
}
.menu .menu-content-2 > ul {
left: -6em;
position: relative;
}
.menu .menu-content-2 > h2 {
left: -6em;
position: relative;
}
.menu .menu-content-3 {
-webkit-transform: none;
-webkit-transition-delay: 1s;
-webkit-transition-duration: 0s;
background-color: black;
position: absolute;
left: 0;
width: 12em;
}
.menu li,
.menu label {
color:...