JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://code.jquery.com/jquery-1.12.0.min.js"></script>
<input id="Radio1" type="radio" class="RadioClass" name="group1" checked="checked" >
<label id="Label1" for="Radio1" class="RadioLabelClass">Radio 1</label>
<input id="Radio2" type="radio" class="RadioClass" name="group1"/>
<label id="Label2" for="Radio2" class="RadioLabelClass">Radio 2</label>
<input id="Radio3" type="radio" class="RadioClass" name="group1"/>
<label id="Label3" for="Radio3" class="RadioLabelClass">Radio 3</label>
CSS
.CheckBoxClass,.RadioClass{
display: none;
}
.CheckBoxLabelClass{
background: url("http://s45.radikal.ru/i110/1602/0d/4771bfde5a88.png") no-repeat;
padding-left: 30px;
padding-top: 3px;
margin: 5px;
height: 28px;
width: 150px;
display: block;
}
.CheckBoxLabelClass:hover, .RadioLabelClass:hover{
text-decoration: underline;
}
.LabelSelected{
background: url("http://s019.radikal.ru/i622/1602/23/71f64738381e.png") no-repeat;
}
.RadioLabelClass{
background: url("http://s45.radikal.ru/i110/1602/0d/4771bfde5a88.png") no-repeat;
padding-left: 30px;
padding-top: 3px;
margin: 5px;
height: 28px;
width: 70px;
display: block;
float: left;
}
.RadioSelected{
background: url("http://s019.radikal.ru/i622/1602/23/71f64738381e.png") no-repeat;
}
JavaScript
$(document).ready(function(){
$(".CheckBoxClass").change(function(){
if($(this).is(":checked")){
$(this).next("label").addClass("LabelSelected");
}else{
$(this).next("label").removeClass("LabelSelected");
}
});
$(".RadioClass").change(function(){
if($(this).is(":checked")){
$(".RadioSelected:not(:checked)").removeClass("RadioSelected");
$(this).next("label").addClass("RadioSelected");
}
});
});