JSFiddle - React, Tailwind, and code Playground

by stuttufu

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;
}