You would need to hide the default checkbox rendered by browsers and show a custom checkbox.
Below is an simple example using :before
pseudo element.
.cb {
display: none;
}
label {
display: inline-block;
position: relative;
padding-left: 25px;
font-size: 16px;
line-height: 20px;
margin: 5px;
}
label:before {
line-height: 20px;
content: "";
display: inline-block;
width: 16px;
height: 16px;
position: absolute;
left: 0;
background-color: #ffffff;
border: 1px solid #666666;
}
input[type=checkbox]:checked + label:before,
label:hover:before {
content: "\2713";
color: #666666;
text-align: center;
line-height: 16px;
}
<input type="checkbox" class="cb" id="check1">
<label for="check1">Normal</label>
<br>
<input type="checkbox" class="cb" id="check2">
<label for="check2">Power</label>
<br>
<input type="checkbox" class="cb" id="check3">
<label for="check3">Admin</label>