JSFiddle - React, Tailwind, and code Playground
HTML
<ul class="kewa-menu">
<li class="b-left"><a href="#">О компании</a></li>
<li class="b-right"><a href="#">Услуги</a>
<ul class="kewa-sub-menu">
<li><a href="#">Разработка</a></li>
<li><a href="#">Продвижение</a></li>
<li><a href="#">Контекст</a></li>
</ul>
</li>
<li class="b-left"><a href="#">Сотрудники</a></li>
<li class="b-right"><a href="#">Контакты</a></li>
</ul>
CSS
.kewa-menu {
position: relative;
z-index: 1;
display: flex;
margin-left: 30%;
margin-top: 25%;
list-style: none;
}
.kewa-menu a {
display: block;
margin-bottom: -1px;
padding: 8px 14px;
color: #0088cc;
text-decoration: none;
border: 1px solid #e5e5e5;
}
.kewa-menu a:hover {
background-color: #f5f5f5;
}
.kewa-menu > li {
position: relative;
}
.kewa-menu .kewa-sub-menu {
position: absolute;
top: 50px;
left: 50px;
overflow: visible;
width: 150px;
margin: 0;
padding: 0;
list-style: none;
background-color: #fcf8e3;
display: none;
}
/* Cелектор для подменю, если навести курсор на родительский элемент верхнего меню */
.kewa-menu > li:hover .kewa-sub-menu {
display: block;
}
.kewa-menu li {
position: relative;
margin: 0 8px 0 3px;
padding: 25px 20px 15px 15px;
border-bottom: 4px solid #ffd569;
outline: 3px solid #cf970c;
overflow: hidden;
vertical-align: top;
}
.kewa-menu li:before, .kewa-menu li:after {
position: absolute;
display: inline-block;
content: '';
width: 0;
height: 0;
}
.b-right:before {
bottom: 0;
right: -10px;
border-left: 10px solid transparent;
border-right: 10px solid transparent;
border-bottom: 20px solid #ffd569;
}
.b-right:after {
bottom: -10px;
right: 0;
border-top: 10px solid transparent;
border-right: 20px solid #ffd569;
border-bottom: 10px solid transparent;
}
.b-left:before {
bottom: 0;
left: -10px;
border-left: 10px solid transparent;
border-right: 10px solid transparent;
border-bottom: 20px solid #ffd569;
}
.b-left:after {
bottom: -10px;
left: 0;
border-top: 10px solid transparent;
border-left: 20px solid #ffd569;
border-bottom: 10px solid transparent;
}