JSFiddle - React, Tailwind, and code Playground
by Calvin Tomkins
HTML
<table>
<tr>
<td>LR</td>
<td>
<input class="tgl" id="cb1" type="checkbox">
<label class="tgl-btn" for="cb1"></label>
</td>
<td>RH</td>
</tr>
</table>
CSS
.tgl {
display: none;
}
* {
box-sizing: border-box;
}
.tgl + .tgl-btn {
outline: 0;
display: block;
width: 4em;
height: 2em;
position: relative;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background: #3f9ddd;
border-radius: 2em;
padding: 2px;
-webkit-transition: all .4s ease;
transition: all .4s ease;
}
.tgl + .tgl-btn:after,
.tgl + .tgl-btn:before {
position: relative;
display: block;
content: "";
width: 50%;
height: 100%;
}
.tgl + .tgl-btn:after {
left: 0;
border-radius: 50%;
background: #fff;
-webkit-transition: all .2s ease;
transition: all .2s ease;
}
.tgl + .tgl-btn:before {
display: none;
}
.tgl:checked + .tgl-btn:after {
left: 50%;
}
.tgl:checked + .tgl-btn {
background: #2ecc71;
}