<ul class="ribbon">
<li class="active">home</li>
<li>about</li>
<li>faq</li>
<li>login</li>
</ul>
body {
background: slategray;
font-family: arial;
}
ul {
margin: 50px;
padding: auto;
width: 765px; /* remove if you want it to wrap */
}
ul li {
list-style-type: none;
display: inline-block;
margin-right: 26px;
}
.ribbon li {
height: 50px;
line-height: 50px;
width: 150px;
background: orange;
font-size: 18px;
text-align: center;
position: relative;
cursor: pointer;
}
.ribbon li::before {
content: '';
border-left: 25px solid transparent;
border-top: 25px solid orange;
border-bottom: 25px solid orange;
border-right: 0;
position: absolute;
left: -25px;
}
.ribbon li::after {
content: '';
border-left: 25px solid orange;
border-top: 25px solid transparent;
border-bottom: 25px solid transparent;
border-right: 0;
position: absolute;
right: -25px;
}
.ribbon li:hover, li.active {
background: tomato;
}
li.active::before,
.ribbon li:hover::before {
border-left: 25px solid transparent;
border-top: 25px solid tomato;
border-bottom: 25px solid tomato;
}
li.active::after,
.ribbon li:hover::after {
border-left: 25px solid tomato;
border-top: 25px solid transparent;
border-bottom: 25px solid transparent;
}
/*
Another quick lunch break exercize
*/
$(".ribbon li").click(function(){
$(".ribbon li").not($(this).toggleClass("active")).removeClass("active");
});
This Pen doesn't use any external CSS resources.