ember-cli-pushy
Version:
pushy responsive off-canvas navigation menu available as an ember-cli addon
121 lines (101 loc) • 2.78 kB
CSS
/*! Pushy - v0.9.2 - 2014-9-13
* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.
* https://github.com/christophery/pushy/
* by Christopher Yee */
/* Menu Appearance */
.pushy{
position: fixed;
width: 200px;
height: 100%;
top: 0;
z-index: 9999;
background: #333332;
font-size: 0.9em;
font-weight: bold;
-webkit-box-shadow: inset -10px 0 6px -9px rgba(0, 0, 0, .7);
-moz-box-shadow: inset -10px 0 6px -9px rgba(0, 0, 0, .7);
box-shadow: inset -10px 0 6px -9px rgba(0, 0, 0, .7);
overflow: auto;
-webkit-overflow-scrolling: touch; /* enables momentum scrolling in iOS overflow elements */
}
.pushy a{
display: block;
color: #b3b3b1;
padding: 15px 30px;
border-bottom: 1px solid rgba(0, 0, 0, .1);
border-top: 1px solid rgba(255, 255, 255, .1);
text-decoration: none;
}
.pushy a:hover{
background: #00b4ff;
color: #FFF;
}
/* Menu Movement */
.pushy-left{
-webkit-transform: translate3d(-200px,0,0);
-moz-transform: translate3d(-200px,0,0);
-ms-transform: translate3d(-200px,0,0);
-o-transform: translate3d(-200px,0,0);
transform: translate3d(-200px,0,0);
}
.pushy-open{
-webkit-transform: translate3d(0,0,0);
-moz-transform: translate3d(0,0,0);
-ms-transform: translate3d(0,0,0);
-o-transform: translate3d(0,0,0);
transform: translate3d(0,0,0);
}
.container-push, .push-push{
-webkit-transform: translate3d(200px,0,0);
-moz-transform: translate3d(200px,0,0);
-ms-transform: translate3d(200px,0,0);
-o-transform: translate3d(200px,0,0);
transform: translate3d(200px,0,0);
}
/* Menu Transitions */
.pushy, #container, .push{
-webkit-transition: -webkit-transform .2s cubic-bezier(.16, .68, .43, .99);
-moz-transition: -moz-transform .2s cubic-bezier(.16, .68, .43, .99);
-o-transition: -o-transform .2s cubic-bezier(.16, .68, .43, .99);
transition: transform .2s cubic-bezier(.16, .68, .43, .99);
}
/* Site Overlay */
.site-overlay{
display: none;
}
.pushy-active .site-overlay{
display: block;
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 9998;
background-color: rgba(0,0,0,0.5);
-webkit-animation: fade 500ms;
-moz-animation: fade 500ms;
-o-animation: fade 500ms;
animation: fade 500ms;
}
@keyframes fade{
0% { opacity: 0; }
100% { opacity: 1; }
}
@-moz-keyframes fade{
0% { opacity: 0; }
100% { opacity: 1; }
}
@-webkit-keyframes fade{
0% { opacity: 0; }
100% { opacity: 1; }
}
@-o-keyframes fade{
0% { opacity: 0; }
100% { opacity: 1; }
}
/* Example Media Query */
@media screen and (max-width: 768px){
.pushy{
font-size: 1.0em;
}
}