CSS Only Drop-Down Menu by Click

Discovered from an article on Ryan Collins' blog: http://www.ryancollins.me/?p=1041 & code was pulled from his demo: http://ryancollins.me/%7C/1041/demo.txt

by epinapala

HTML

<section class="app-documentation-mid-nav" w-bind="./index">
<div class="mid-menu">
    <div class="wrapper">
        <div class="content">
            <ul>
                <a href="#"><li>Lorem ipsum dolor</li></a>
                <a href="#"><li>Consectetur adipisicing</li></a>
                <a href="#"><li>Reprehenderit</li></a>
                <a href="#"><li>Commodo consequat</li></a>
            </ul>
        </div>
        <div class="parent">Drop Down Parent 1</div>
    </div>
    
    <div class="wrapper">
        <div class="content">
            <ul>
                <a href="#"><li>Lorem ipsum dolor</li></a>
                <a href="#"><li>Consectetur adipisicing</li></a>
                <a href="#"><li>Reprehenderit</li></a>
                <a href="#"><li>Commodo consequat</li></a>
            </ul>
        </div>
        <div class="parent">Drop Down Parent 2</div>
    </div>
    </div>
</section>

CSS

@import "../../global-style/mixins.less";
.app-documentation-mid-nav {
    .mid-menu {
        .wrapper {
            display: inline-block;
            width: 180px;
            margin: 0 10px 0 0;
            height: 20px;
            position: relative;
        }
        .parent {
            height: 100%;
            width: 100%;
            display: block;
            cursor: pointer;
            line-height: 30px;
            border-radius: 5px;
            background: #F9F9F9;
            border: 1px solid #AAA;
            border-bottom: 1px solid #777;
            color: #282D31;
            font-weight: bold;
            z-index: 2;
            position: relative;
            .vendor(transition, border-radius .1s linear);
            .vendor(transition-delay, .8s);
            text-align: center;
        }
        .parent:hover,
        .content:hover~.parent {
            background: #fff;
            .vendor(transition-delay, 0s);
        }
        .content:hover~.parent {
            border-bottom-left-radius: 0;
            border-bottom-right-radius: 0;
            z-index: 0;
        }
        .content {
            position: absolute;
            top: 0;
            display: block;
            z-index: 1;
            height: 0;
            width: 180px;
            padding-top: 30px;
            .vendor(transition, height .5s ease);
            .vendor(transition-delay, .4s);
            border: 1px solid #777;
            border-radius: 5px;
            box-shadow: 0 1px 2px rgba(0, 0, 0, .4);
        }
        .wrapper:active .content {
            height: 123px;
            z-index: 3;
            .vendor(transition-delay, 0s);
        }
        .content:hover {
            height: 123px;
            z-index: 3;
            .vendor(transition-delay, 0s);
        }
        .content ul {
            background: #fff;
            margin: 0;
            padding: 0;
            overflow: hidden;
            height: 100%;
           ...