JSFiddle - React, Tailwind, and code Playground
by manikantag
HTML
<label class="switch"><input type="checkbox" checked><i></i></label>
<label class="switch red"><input type="checkbox"><i></i></label>
CSS
.switch input {
display: none;
}
.switch i {
display: inline-block;
cursor: pointer;
padding-right: 20px;
transition: all ease 0.2s;
-webkit-transition: all ease 0.2s;
border-radius: 20px;
box-shadow: inset 0 0 1px rgba(0,0,0,.5);
}
.switch i:before {
display: block;
content: '';
width: 20px;
height: 20px;
border-radius: 20px;
background: white;
box-shadow: 0 1px 2px rgba(0,0,0,.5);
}
.switch :checked + i {
padding-right: 0;
padding-left: 20px;
box-shadow: inset 0 0 1px rgba(0,0,0,.5), inset 0 0 40px lightblue;
-webkit-box-shadow: inset 0 0 1px rgba(0,0,0,.5), inset 0 0 40px lightblue;
}
.switch.red :checked + i {
box-shadow: inset 0 0 1px rgba(0,0,0,.5), inset 0 0 40px red;
-webkit-box-shadow: inset 0 0 1px rgba(0,0,0,.5), inset 0 0 40px red;
}