Path app copycat v2
Fixed cross-browser compatibility.
HTML
<h1>"Add" menu from the Path application in pure CSS.</h1>
<p>by Denys Mishunov (<a href="http://goo.gl/wRIKL" title="Original blog post">http://goo.gl/wRIKL</a>)</p>
<nav>
<!-- We don't really care about specific value of the input, but Opera doesn't trigger the state for this checkbox without it. -->
<input type="checkbox" id="shownav" value="true" class="visuallyhidden" />
<label for="shownav" class="ir">Show navigation</label>
<ul class="menu">
<li><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
</ul>
</nav>
CSS
/* Basics */
body {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
padding: .5em;
}
h1 {
font-weight: bold;
font-size: 1.2em;
}
p {
margin-bottom: 1.5em;
}
nav {
background: #efede9;
border: 1px solid #bfbeba;
position: relative;
width: 14em;
height: 14em;
}
/* Some helper classes from the HTML5 Boilerplate */
/* .visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }*/
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
/* The toggle */
label[for="shownav"], .menu, input#shownav {
position: absolute;
bottom: 5%;
left: 5%;
padding: 0;
margin: 0;
}
input#shownav,
input#shownav:checked {
-webkit-appearance: none;
-moz-appearance: none;
border: none;
background: transparent;
outline: none;
height: 2.4em;
width: 2.4em;
padding: 0;
margin: 0;
z-index: 2;
}
label[for="shownav"], .menu a {
/* Basis for the circles */
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;
-moz-background-clip: padding;
-webkit-background-clip: padding-box;
background-clip: padding-box;
-webkit-box-shadow: 0 0 0 3px #fff, 0 0 0 4px #949390, 0px .1em .15em 4px #bdbbb7;
-moz-box-shadow: 0 0 0 3px #fff, 0 0 0 4px #949390, 0px .1em .15em 4px #bdbbb7;
box-shadow: 0 0 0 3px #fff, 0 0 0 4px #949390, 0px .1em .15em 4px #bdbbb7;
}
label[for="shownav"] {
display: block;
color: #fff;
z-index: 3; /* to initially overlap the navigation items */
height: 1em;
width: 1em;
line-height: 1;
font-size: 2.4em;
cursor: pointer;
pointer-events: none;
background-color: #e76040;
background-image: -webkit-gradient(radial,...