JSFiddle - React, Tailwind, and code Playground

by DaveAlger

HTML

<ul>
    <li><a href="#"><span class="menu-text">SNMP</span></a></li>
    <li class="active"><a href="#"><span class="menu-text">VMWare</span></a></li>
    <li><a href="#"><span class="menu-text">Windows</span></a></li>
    <li><a href="#"><span class="menu-text">Network</span></a></li>
    <li><a href="#"><span class="menu-text">Discovery Settings</span></a></li>
    <li><a href="#"><span class="menu-text">Discovery Scheduling</span></a></li>
</ul>

<div id="page-title">VMWare</div>

CSS

* {
    font-family: sans-serif;
}

ul li {
    display: inline-block;
    height: 30px;
    line-height: 30px;
    margin: 5px 1px 0 0;
    text-indent: 35px;
    position: relative;
    text-transform: uppercase;
}

ul li:before {
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    left: -2px;
    border-style: solid;
    border-width: 15px 0 15px 15px;
    border-color: transparent transparent transparent #fff;
    z-index: 0;
}

ul li:first-child:before {
    border-color: transparent;
}

ul li a:after {
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    right: -15px;
    border-style: solid;
    border-width: 15px 0 15px 15px;
    border-color: transparent transparent transparent #ccc;
    z-index: 10;
}

ul li.active a {
    background: orange;
    z-index: 100;
}

ul li.active a:after {
    border-left-color: orange;
}

ul li a {
    display: block;
    background: #ccc;
    overflow: hidden;
    color: blue;
    font-size: 12px;
    text-decoration: none;
}

ul li a:hover {
    background: #bbb;
}

ul li a:hover:after {
    border-color: transparent transparent transparent #bbb;
}

.menu-text {
    position: relative;
    left: -10px;
    border-bottom: 1px solid blue;
}

#page-title {
    margin-left: 40px;
    font-size: 18px;
}

JavaScript

$("li").click(function () {
    $("#page-title").html($(this).text());
    $("li").removeClass("active");
    $(this).addClass("active");
});