JSFiddle - React, Tailwind, and code Playground
by TiGR
HTML
<aside></aside>
<ul>
<li>A</li>
<li class="active">B</li>
<li>C</li>
<li>D</li>
</ul>
CSS
body {
background-color: #bada55;
}
aside {
display: block;
position: absolute;
margin-left: 30px;
background-color: white;
border-left:1px solid #bbb;
height: 120px;
width: 10px;
box-shadow: -2px 1px 2px #ddd;
content: " ";
}
ul, li {
margin:0;
padding:0;
}
li, ul {
width:30px;
}
li {
height: 30px;
line-height: 30px;
background-color: #eee;
text-align: center;
}
li.active:before, li.active:after {
display: block;
position: absolute;
height: 0px;
width: 0px;
content: " ";
}
li.active:before {
border: 9px solid transparent;
border-right: 9px solid #bbb;
margin-left: 13px;
margin-top: 5px;
}
li.active:after {
border: 8px solid transparent;
border-right: 8px solid white;
margin-left: 15px;
margin-top: -24px;
}