JSFiddle - React, Tailwind, and code Playground
HTML
<div class="admonition">
<div class="admonition-title">Tip</div>
<p>default</p>
</div>
<div class="admonition">
<div class="admonition-tip">Tip</div>
<p>tip</p>
</div>
<div class="admonition">
<div class="admonition-note">Note</div>
<p>note</p>
</div>
<div class="admonition">
<div class="admonition-caution">Caution</div>
<p>caution</p>
</div>
<div class="admonition">
<div class="admonition-warning">Warning</div>
<p>warning</p>
</div>
CSS
.admonition {
position: relative;
padding: 23px 10px 22px;
margin: 20px;
background: #FEFEFE;
border: 1px solid black;
font-family: Helvetica, Arial;
}
.admonition-title {
position: absolute;
top: -10px;
left: -10px;
padding: 4px 8px;
background: #343332;
color: #fff;
-webkit-box-shadow: 100px 100px 20px rgba(0, 0, 0, 0.3);
-moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}
.admonition-tip {
position: absolute;
top: -10px;
left: -10px;
padding: 4px 8px;
background: blue;
color: #fff;
-webkit-box-shadow: 1px 1px 2px rgba(1, 1, 1, 0.3);
-moz-box-shadow: 1px 1px 2px rgba(1, 1, 1, 0.3);
box-shadow: 1px 1px 2px rgba(1, 1, 1, 0.3);
}
.admonition-note {
position: absolute;
top: -10px;
left: -10px;
padding: 4px 8px;
background: green;
color: #fff;
-webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
-moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}
.admonition-caution {
position: absolute;
top: -10px;
left: -10px;
padding: 4px 8px;
background: orange;
color: #fff;
-webkit-box-shadow: 50px 50px 50px rgba(0, 0, 0, 0.3);
-moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}
.admonition-warning {
position: absolute;
top: -10px;
left: -10px;
padding: 4px 8px;
background: red;
color: #fff;
-webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
-moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}
.admonition-tip:after {
content:'';
display: block;
height: 20px;
width: 8px;
position: absolute;
top: 24px;
left: 0px;
background: transparent;
z-index: -1;
border-top: 45px solid blue;
border-left: 45px solid transparent;
}