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;
}