JSFiddle - React, Tailwind, and code Playground
by Dawid Karwat
HTML
<input type="checkbox" id="myhiddencheckbox"/>
<label for="myhiddencheckbox" id="mybutton">
My Button
<div id="myrotation">
<div/>
</div>
</label>
CSS
#myhiddencheckbox{
display: none;
}
#mybutton{
width: 140px;
height: 40px;
overflow: hidden;
border-radius: 8px 8px 0 0;
display: inline-block;
background-color: #999;
}
#mybutton:hover{
box-shadow: inset 0 0 3px #000;
}
#myrotation{
width: 40px;
height: 100%;
background-color: #777;
overflow: hidden;
float: right;
}
#myrotation > div{
width: 100%;
height: 100%;
background-color: #444;
transition: 800ms;
}
#myhiddencheckbox:checked + #mybutton > #myrotation > div{
transform: rotate(180deg);
-webkit-transform: rotate(180deg);
}
#myhiddencheckbox:checked + #mybutton{
background-color: #BBB;
}