JSFiddle - React, Tailwind, and code Playground
HTML
<div class="relative">
<input type="checkbox"><label>Hello fancy checkbox :)</label>
</div>
CSS
body{
background: #333;
color: white;
}
.relative{
position: relative;
}
input[type=checkbox]{
position: absolute;
left: 0;
top: 2px;
z-index: 99;
cursor: pointer;
opacity: 0;
margin: 0;
}
input[type=checkbox] + label{
vertical-align: baseline;
display: inline-block;
position: relative;
padding-left: 20px;
}
input[type=checkbox]:checked + label:before{
content: "\2713";
text-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
color: #333;
text-align: center;
}
input[type=checkbox] + label:before{
content: "";
display: inline-block;
width: 15px;
height: 15px;
line-height: 15px;
position: absolute;
left: 0;
top: 2px;
z-index: 1;
background-color: white;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
}