JSFiddle - React, Tailwind, and code Playground
by George Batt
HTML
<div class="container">
<div class="truck">
<div class="truck__window absolute"></div>
<div class="truck__cab absolute bg-green"></div>
<div class="truck__skip absolute">
<div class="truck__skip__top"></div>
<div class="truck__skip__bottom"></div>
</div>
<div class="truck__crane absolute bg-green"></div>
<div class="truck__bed absolute bg-green"></div>
<div class="truck__tail absolute"></div>
<div class="truck__belly absolute bg-green"></div>
<div class="truck__wheel absolute">
<div class="truck__wheel__hub"></div>
</div>
<div class="truck__wheel truck__wheel--rear absolute">
<div class="truck__wheel__hub"></div>
</div>
</div>
</div>
CSS
body{
background: #eee;
margin: 0;
}
*{
box-sizing: border-box;
}
.container{
background: #fff;
border: 1px solid #ddd;
padding: 2rem;
margin: 1rem;
}
.bg-green{
background-color: #008f58;
}
.absolute{
position: absolute;
}
.truck{
font-size: 20px;
width: 6.25em;
height: 3.875em;
position: relative;
}
/* .truck::after{
content: ' ';
position: absolute;
left: -1px; right: -1px; top: -1px; bottom: -1px;
border: 1px solid #f00;
} */
.truck__window{
border-top-left-radius: .7em 1.3em;
border-top-right-radius: 0.3125em;
border: 0.1875em solid #008f58;
border-bottom: 0;
border-right-width: 0.3125em;
width: 1.6875em;
height: 1em;
top: 0.8125em;
}
.truck__cab{
border-bottom-left-radius: 0.1875em;
width: 1.6875em;
height: 1.375em;
top: 1.8125em;
}
.truck__skip{
width: 3.4375em;
left: 1.9375em;
top: 0.875em;
}
.truck__skip__top{
border-bottom: 0.375em solid #008f58;
border-left: 0.375em solid transparent;
border-right: 0.375em solid transparent;
}
.truck__skip__bottom{
border-top: 1.0625em solid #008f58;
border-left: 0.875em solid transparent;
border-right: 0.875em solid transparent;
}
.truck__crane{
border-radius: 99999em;
border: 0.0625em solid #fff;
width: 3.25em;
height: 0.5em;
left: 2.5em;
top: 2.125em;
transform-origin: right center;
transform: rotate(44.81deg);
}
.truck__bed{
width: 5.5625em;
height: 0.375em;
top: 2.5em;
}
.truck__tail{
border-left: 0.875em solid #008f58;
border-top: 0.1875em solid transparent;
height: 0.375em;
left: 5.5625em;
top: 2.5em;
transform-origin: left top;
transform: rotate(43deg);
}
.truck__belly{
width: 3.5em;
height: 0.1875em;
left: 1.4375em;
top: 3em;
}
.truck__wheel{
border-radius: 99999em;
border: 0.125em solid #fff;
top: 2.75em;
left: 0.75em;
}
.truck__wheel--rear{
left: 4.25em;
}
.truck__wheel__hub{
border-radius: 99999em;
background-color: #fff;
border: 0.25em solid #008f58;
...