JSFiddle - React, Tailwind, and code Playground
by Caleb Wong
HTML
<script src="https://raw.github.com/LeaVerou/prefixfree/master/prefixfree.min.js"></script>
<div class="ui-overlay">
<div class="ui-overlay-content">
content
</div>
<div class="arrow"></div>
</div>
CSS
body {
padding: 20px;
}
.ui-overlay {
padding-bottom: 10px;
position: relative;
}
.ui-overlay-content {
background: #999;
color: #000;
padding: 8px;
border-radius: 4px;
border: 5px solid rgba(0, 0, 0, 0.2);
background-clip: padding-box;
height: 100px;
width: 200px;
}
.ui-overlay-content:after {
content: ' ';
border-width: 12px;
border-color: #999 transparent transparent;
border-style: solid;
bottom: -9px;
left: 30px;
width: 0;
height: 0;
position: absolute;
}
.arrow {
bottom: -30px;
left: 26px;
width: 40px;
height: 40px;
position: absolute;
overflow: hidden;
}
.arrow:after {
content: ' ';
display: block;
background: red;
width: 18px;
height: 18px;
transform: rotate(45deg);
position: absolute;
top: -20px;
left: 3px;
background: #999;
border: 5px solid rgba(0, 0, 0, 0.2);
background-clip: padding-box;
}