<div class="lab-container">
<nav id="menu">
<label for="tm" id="toggle-menu">Navigation <span class="drop-icon">▾</span></label>
<input type="checkbox" id="tm"/>
<ul class="main-menu cf">
<li><a href="#">Sample</a></li>
<li><a href="#">Dropdown
<span class="drop-icon">▾</span>
<label title="Toggle Drop-down" class="drop-icon" for="sm0">▾</label>
</a>
<input type="checkbox" id="sm0"/>
<ul class="sub-menu">
<li><a href="#">Item 1.1</a></li>
<li><a href="#">Item 1.2</a></li>
<li><a href="#">Item 1.3</a></li>
<li><a href="#">Item 1.4</a></li>
</ul>
</li>
<li><a href="#">2-level DD
<span class="drop-icon">▾</span>
<label title="Toggle Drop-down" class="drop-icon" for="sm1">▾</label>
</a>
<input type="checkbox" id="sm1"/>
<ul class="sub-menu">
<li><a href="#">Item 2.1</a></li>
<li><a href="#">Item 2.2
<span class="drop-icon">▸</span>
<label title="Toggle Drop-down" class="drop-icon" for="sm2">▾</label>
</a>
<input type="checkbox" id="sm2"/>
<ul class="sub-menu">
<li><a href="#">Item 2.2.1</a></li>
<li><a href="#">Item 2.2.2</a></li>
<li><a href="#">Item 2.2.3</a></li>
</ul>
</li>
<li><a href="#">Item 2.3</a></li>
</ul>
</li>
<li><a href="#">Multiple Levels
<span class="drop-icon">▾</span>
<label title="Toggle Drop-down" class="drop-icon" for="sm3">▾</label>
</a>
<input type="checkbox" id="sm3"/>
<ul class="sub-menu">
<li><a href="">3.1
<span class="drop-icon">▸</span>
<label title="Toggle Drop-down" class="drop-icon" for="sm4">▾</label>
</a>
<input type="checkbox" id="sm4"/>
<ul class="sub-menu">
<li><a href="">3.1.1</a></li>
<li><a href="">3.1.2</a></li>
<li><a href="">3.1.3</a></li>
<li><a href="">3.1.4</a></li>
</ul>
</li>
<li><a href="">3.2
<span class="drop-icon">▸</span>
<label title="Toggle Drop-down" class="drop-icon" for="sm5">▾</label>
</a>
<input type="checkbox" id="sm5"/>
<ul class="sub-menu">
<li><a href="">3.2.1</a></li>
<li><a href="">3.2.2</a></li>
<li><a href="">3.2.3</a></li>
</ul>
</li>
<li><a href="">3.3
<span class="drop-icon">▸</span>
<label title="Toggle Drop-down" class="drop-icon" for="sm6">▾</label>
</a>
<input type="checkbox" id="sm6"/>
<ul class="sub-menu">
<li><a href="">3.3.1</a></li>
<li><a href="">3.3.2</a></li>
<li><a href="">3.2.2</a></li>
<li><a href="">3.3.4</a></li>
<li><a href="">3.3.5</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#">Sample #2</a></li>
<li><a href="#">Another DD
<span class="drop-icon">▾</span>
<label title="Toggle Drop-down" class="drop-icon" for="sm8">▾</label>
</a>
<input type="checkbox" id="sm8"/>
<ul class="sub-menu">
<li><a href="">4.1</a></li>
<li><a href="">4.2</a></li>
<li><a href="">4.2</a></li>
<li><a href="">4.4</a></li>
</ul>
</li>
</ul>
</nav>
</div>
.lab-container {
padding: 5rem 2rem;
}
#menu {
background-color: #07c;
}
#menu a {
text-decoration: none;
}
#menu .main-menu {
display: none;
}
#tm:checked + .main-menu {
display: block;
}
#menu input[type="checkbox"],
#menu ul span.drop-icon {
display: none;
}
#menu li,
#toggle-menu,
#menu .sub-menu {
border-style: solid;
border-color: rgba(0, 0, 0, .05);
}
#menu li,
#toggle-menu {
border-width: 0 0 1px;
}
#menu .sub-menu {
background-color: #444;
border-width: 1px 1px 0;
margin: 0 1em;
}
#menu .sub-menu li:last-child {
border-width: 0;
}
#menu li,
#toggle-menu,
#menu a {
position: relative;
display: block;
color: white;
text-shadow: 1px 1px 0 rgba(0, 0, 0, .125);
}
#menu {
background-color: #09c;
}
#toggle-menu {
background: #333;
}
#toggle-menu,
#menu a {
padding: 1em 1.5em;
}
#menu a {
transition: all .125s ease-in-out;
-webkit-transition: all .125s ease-in-out;
}
#menu a:hover {
background-color: white;
color: #09c;
}
#menu .sub-menu {
display: none;
}
#menu input[type="checkbox"]:checked + .sub-menu {
display: block;
}
#menu .sub-menu a:hover {
color: #444;
}
#toggle-menu .drop-icon,
#menu li label.drop-icon {
position: absolute;
right: 0;
top: 0;
}
#menu label.drop-icon, #toggle-menu span.drop-icon {
padding: 1em;
font-size: 1em;
text-align: center;
background-color: rgba(0, 0, 0, .125);
text-shadow: 0 0 0 transparent;
color: rgba(255, 255, 255, .75);
}
@media only screen and (min-width: 1024px) {
#menu {
padding-inline: 2rem;
}
#menu .main-menu {
display: flex;
}
#toggle-menu,
#menu label.drop-icon {
display: none;
}
#menu ul span.drop-icon {
display: inline-block;
}
#menu li {
border-width: 0 1px 0 0;
}
#menu .sub-menu {
border-width: 0;
margin: 0;
position: absolute;
top: 100%;
left: 0;
width: 12em;
z-index: 3000;
}
#menu .sub-menu,
#menu input[type="checkbox"]:checked + .sub-menu {
display: none;
}
#menu .sub-menu li {
border-width: 0 0 1px;
}
#menu .sub-menu .sub-menu {
top: 0;
left: 100%;
}
#menu .sub-menu .drop-icon {
position: absolute;
top: 0;
right: 0;
padding: 1em;
}
#menu li:hover > input[type="checkbox"] + .sub-menu {
display: block;
}
}