JSFiddle - React, Tailwind, and code Playground
by stevelove
HTML
<div class="crab">
<div class="eyes"></div>
<div class="claw left"></div>
<div class="claw right"></div>
<div class="legs"></div>
<div class="legs"></div>
<div class="legs"></div>
<div class="legs"></div>
</div>
CSS
.crab {
height:90px;
width:180px;
-moz-border-radius:0 0 180px 180px;
-webkit-border-radius:0 0 180px 180px;
border-radius:0 0 180px 180px;
background:#f70;
position:relative;
margin:100px;
}
.crab:first-line {
color:#3c3;
font-size:72px;
}
.crab:before, .crab:after {
content:"";
background:#f70;
height:25px;
width:25px;
position:absolute;
left:-28px;
}
.crab:after {
top:0;
left:183px;
}
.eyes {
position:absolute;
text-indent:50px;
top:-5px;
}
.eyes:before {
color:#3c3;
content:"\25CF\25CF";
font-size:42px;
letter-spacing:15px;
line-height:0;
position:relative;
top:-5px;
left:5px;
}
.eyes:after{
color:#f70;
content:"\0264";
font:120px sans-serif;
line-height:0;
position:absolute;
top:-7px;
left:2px;
}
.claw.left {
width: 0;
height: 0;
border-top: 25px solid #f70;
border-left: 25px solid transparent;
position:relative;
left:-56px;
}
.claw.left:before {
content:"";
height:40px;
width:100px;
-moz-border-radius:100px 150px 0 0 / 100px 100px 0 0;
-webkit-border-radius:100px 150px 0 0 / 100px 100px 0 0;
border-radius:100px 150px 0 0 / 100px 100px 0 0;
background:#f70;
position:absolute;
top:-95px;
left:-50px;
-webkit-transform: rotate(-50deg);
-moz-transform: rotate(-50deg);
-ms-transform: rotate(-50deg);
-o-transform: rotate(-50deg);
}
.claw.left:after {
content:"";
width: 0;
height: 0;
border-top: 0px solid transparent;
border-left: 50px solid #f70;
border-bottom: 40px solid transparent;
position:absolute;
top:-60px;
left:-10px;
-webkit-transform: rotate(20deg);
-moz-transform: rotate(20deg);
-ms-transform: rotate(20deg);
-o-transform: rotate(20deg);
}
.claw.right {
width: 0;
height: 0;
border-top: 25px solid #f70;
border-right: 25px solid...