<div class="controls">
<div class="prev">Previous project</div>
<div class="count">
<span class="current">01</span>
<span class="divider">/</span>
<span class="total">04</span>
</div>
<div class="next">Next project</div>
</div>
*, *::before, *::after {
box-sizing: border-box;
}
body {
margin: 0;
background-color: #3f3b48;
}
.controls {
display: flex;
max-width: 400px;
height: 44px;
margin: 50px;
font-family: Oswald, sans-serif;
font-weight: 700;
font-size: 0.8em;
white-space: nowrap;
}
.next, .prev {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
background-color: #fff;
color: #3f3b48;
text-transform: uppercase;
padding: 10px;
cursor: pointer;
}
.next {
clip-path: polygon(100% 0, 100% 100%, 0 calc(100% - 7px), 0 7px);
}
.prev {
clip-path: polygon(0 0, 100% 7px, 100% calc(100% - 7px), 0 100%);
}
.count {
display: flex;
align-items: center;
justify-content: center;
position: relative;
flex: 0 0 70px;
background-color: #3f3b48;
text-align: center;
border: 3px solid #fff;
border-radius: 9px;
color: #fff;
margin: 0 -1px;
font-weight: 700;
z-index: 0;
}
.count::before, .count::after {
content: '';
position: absolute;
left: calc(50% - 24px);
width: 48px;
height: 48px;
border: inherit;
background-color: inherit;
border-radius: 50%;
z-index: -1;
}
.count::before {
top: -9px;
clip-path: polygon(0 0, 100% 0, 50% 50%);
}
.count::after {
bottom: -9px;
clip-path: polygon(0 100%, 100% 100%, 50% 50%);
}
.current {
font-size: 1.5em;
}
.divider {
font-size: 1.8em;
margin: 0 0.1em;
}
.total {
font-size: 1em;
margin-top: -0.1em;
}
This Pen doesn't use any external JavaScript resources.