A Pen by Secret Sam on CodePen.
Created
October 23, 2013 12:48
-
-
Save anonymous/7118036 to your computer and use it in GitHub Desktop.
A Pen by Anonasaurus Rex.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<section> | |
<nav> | |
<a class="navicon-button loading"> | |
<div class="navicon"></div> | |
</a> | |
<a class="navicon-button larr"> | |
<div class="navicon"></div> | |
</a> | |
<a class="navicon-button uarr"> | |
<div class="navicon"></div> | |
</a> | |
<a class="navicon-button x"> | |
<div class="navicon"></div> | |
</a> | |
<a class="navicon-button plus"> | |
<div class="navicon"></div> | |
</a> | |
<a class="navicon-button"> | |
<div class="navicon"></div> | |
</a> | |
</nav> | |
<h1>Click the icons!</h1> | |
</section> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$("a").click(function(){ | |
$(this).toggleClass("open"); | |
$("h1").addClass("fade"); | |
}); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@import "compass"; | |
/* Change this to watch in slo-mo */ | |
$transition-duration: .5s; | |
$size : 100%; | |
$toggled-size : .75; | |
$bodybg : #449a88; | |
$navbg : #2a2a2a; | |
$pagebg : #e7e6dd; | |
.navicon-button { | |
display: inline-block; | |
position: relative; | |
padding: 2.0625rem 1.5rem; | |
transition: $transition-duration/2; | |
cursor: pointer; | |
user-select: none; | |
opacity: .8; | |
.navicon:before, .navicon:after { | |
transition: $transition-duration/2; | |
} | |
&:hover { | |
transition: $transition-duration; | |
opacity: 1; | |
.navicon:before, .navicon:after { | |
transition: $transition-duration/2; | |
} | |
.navicon:after { top: -.825rem; } | |
.navicon:before { top: .825rem; } | |
} | |
} | |
.navicon { | |
position: relative; | |
width: 2.5em; | |
height: .3125rem; | |
background: $pagebg; | |
transition: $transition-duration; | |
border-radius: 2.5rem; | |
&:after, &:before { | |
display: block; | |
content: ""; | |
height: .3125rem; | |
width: 2.5rem; | |
background: $pagebg; | |
position: absolute; | |
z-index: -1; | |
transition: $transition-duration ($transition-duration/2); | |
border-radius: 1rem; | |
} | |
&:after { top: -.625rem; } | |
&:before { top: .625rem; } | |
} | |
.open:not(.steps) .navicon:before, | |
.open:not(.steps) .navicon:after { | |
top: 0 !important; | |
} | |
.open .navicon:before, | |
.open .navicon:after { | |
transition: $transition-duration; | |
} | |
/* Minus */ | |
.open { transform: scale($toggled-size); } | |
/* Arrows */ | |
.open.larr .navicon, | |
.open.uarr .navicon { | |
&:before, &:after { | |
width: 1.5rem; | |
} | |
&:before { transform: rotate(35deg); transform-origin: left top; } | |
&:after { transform: rotate(-35deg); transform-origin: left bottom; } | |
} | |
.open.uarr { transform: scale($toggled-size) rotate(90deg); } | |
/* × and + */ | |
.open.plus, | |
.open.x { | |
.navicon { | |
background: transparent; | |
&:after { transform: rotate(45deg); } | |
&:before { transform: rotate(-45deg); } | |
} | |
} | |
.open.plus { transform: scale($toggled-size) rotate(45deg) } | |
.loading .navicon { | |
color: dodgerblue; | |
box-shadow: inset 0 0; | |
transition: $transition-duration, box-shadow 0; | |
} | |
.loading .navicon { transition: 0; } | |
.open.loading { | |
transform: none; | |
.navicon { | |
box-shadow: inset 2.5rem 0; | |
transition: $transition-duration, box-shadow $transition-duration*5; | |
&:before, &:after { opacity: 0; } | |
} | |
} | |
/* Base ================== */ | |
* { box-sizing: border-box; } | |
html { font-size: $size; } | |
html, body, section { position: relative; height: 100%; } | |
body { | |
background: $bodybg; | |
padding: 1.5rem 1.5rem 0; | |
-webkit-backface-visibility: hidden; | |
} | |
section { | |
display: flex; | |
flex-direction: column; | |
justify-content: space-between; | |
border-radius: .5rem .5rem 0 0; | |
background: $pagebg; | |
overflow: hidden; | |
/* Smoother animations */ | |
& *, | |
& *:before, | |
& *:after { | |
transform: translate3d(0,0,0); | |
} | |
} | |
nav { | |
height: 4.5rem; | |
background: $navbg; | |
text-align: right; | |
border-radius: .5rem .5rem 0 0; | |
user-select: none; | |
-webkit-tap-highlight-color: transparent; | |
} | |
h1 { | |
text-align: right; | |
font: 2rem/4.5rem "Kite One"; | |
padding: 0 1.5rem; | |
opacity: .5; | |
transition: $transition-duration*2; | |
pointer-events: none; | |
&.fade { | |
opacity: 0; | |
} | |
} | |
@font-face { | |
font-family: 'Kite One'; | |
font-style: normal; | |
font-weight: 400; | |
src: local('Kite One'), local('KiteOne-Regular'), url(http://themes.googleusercontent.com/static/fonts/kiteone/v1/VNHoD96LpZ9rGZTwjozAOnYhjbSpvc47ee6xR_80Hnw.woff) format('woff'); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment