
Checkbox personalizzato tramite CSS
Tramite il CSS è possibile personalizzare l'aspetto di una checkbox senza l'uso di immagini.
Usando questo HTML 5
e questo CSS
si ottiene questo risultato
checkbox personalizzata e questa è la demo
Un'altra versione si può trovare a questa pagina Html switch (checkbox) in CSS.
Usando questo HTML 5
HTML
<p class="sgart-chk-wrapper">
<label for="chk-1">Checkbox personalizzato</label> <input type="checkbox" id="chk-1" class="sgart-chk">
</p>
CSS
:root{
--sgart-chk-border-color: #999999;
--sgart-chk-background-color: #444444;
--sgart-chk-checked-color: #f0ad4e;
}
.sgart-chk-wrapper {
box-sizing: border-box;
display: flex;
align-items: baseline;
}
.sgart-chk, input[type="checkbox"].sgart-chk {
box-sizing: border-box;
width: 24px;
height: 24px;
position: relative;
appearance: none;
border: 1px solid var(--sgart-chk-border-color);
border-radius: 4px;
background-color: var(--sgart-chk-background-color);
margin: 3px 6px;
}
.sgart-chk::after, input[type="checkbox"].sgart-chk::after {
box-sizing: border-box;
content: '';
display: inline-block;
width: 8px;
height: 13px;
text-align: center;
border-radius: 3px;
position: absolute;
top: 4px;
left: 8px;
}
.sgart-chk:checked::after, input[type="checkbox"].sgart-chk:checked::after {
border-right: 4px solid var(--sgart-chk-checked-color);
border-bottom: 4px solid var(--sgart-chk-checked-color);
transform: rotate(45deg);
}

Un'altra versione si può trovare a questa pagina Html switch (checkbox) in CSS.