JSFiddle - React, Tailwind, and code Playground
HTML
<div class="first">
<div>qqqqqq а fsdf ываыв sdf ыва ываыв fsdf</div>
<div>qqqqqq а fsdf</div>
<div>qqqqqq а fsdf ываыв fsdf </div>
<div>qqqqqq а fsfsdf </div>
<hr />
</div>
<div class="second">
<div>qqqqqq а fsdf ываыв sdf ыва ываыв fsdf</div>
</div>
<div class="second">
<div>qqqqqq а fsdf</div>
</div>
<div class="second">
<div>qqqqqq а fsdf ываыв fsdf </div>
</div>
<div class="second">
<div>qqqqqq а fsfsdf </div>
</div>
CSS
hr {
margin:0;
padding:0;
}
.first div{
display:inline-block;
position:relative;
background-color:red;
overflow:hidden;
max-width:10em;
padding-bottom:1.5em;
}
.first div:before,
.first div:after{
content:"";
display:block;
position:absolute;
top:100%;
left:0;
margin-top:-1.5em;
width:100%;
height:100%;
background-color:white;
}
.first div:before{
transform-origin: left top;
transform: rotate(15deg);
}
.first div:after{
transform-origin: top right;
transform: rotate(-15deg);
}
.second {background: #333;position:relative;
position:relative;
height:50px;
}
.second div+div{
}
.second div {
display: inline-block;
position: absolute;
left: 16%;
top: 0;
font-family: 'PT Sans Narrow', sans-serif;
font-size: 12px;
font-weight: 700;
background: #8bc807;
color: #fff;
text-transform: uppercase;
padding: 5px 10px;
}
.second div:before, .second div:after {
position: absolute;
top: 100%;
content: '';
width: 50%;
height: 7px;
}
.second div:before {
left: 0px;
background: linear-gradient(to right top, transparent 50%, #8bc807 50%);
}
.second div:after {
right: 0px;
background: linear-gradient(to left top, transparent 50%, #8bc807 50%);
}