Tengo una lista de casillas de verificación en una tabla. (uno de varios CB en la fila)
<tr><td><input type="checkbox" class="custom_image" value="1" id="CB1" /><label for='CB1'> </label></td></tr>
<tr><td><input type="checkbox" class="custom_image" value="2" id="CB2" /><label for='CB2'> </label></td></tr>
<tr><td><input type="checkbox" class="custom_image" value="3" id="CB3" /><label for='CB3'> </label></td></tr>
<tr><td><input type="checkbox" class="custom_image" value="4" id="CB4" /><label for='CB4'> </label></td></tr>
Me gustaría reemplazar la imagen de la casilla de verificación con un par de imágenes personalizadas de encendido / apagado y me preguntaba si alguien tenía una mejor comprensión de cómo hacer esto con CSS.
Encontré este tutorial de "CSS ninja", pero debo admitir que lo encuentro un poco complejo para mí. http://www.thecssninja.com/css/custom-inputs-using-css
Por lo que puedo decir, puedes usar una pseudoclase
td:not(#foo) > input[type=checkbox] + label
{
background: url('/images/off.png') 0 0px no-repeat;
height: 16px;
padding: 0 0 0 0px;
}
Mi expectativa era que al agregar el CSS anterior, la casilla de verificación al menos por defecto mostraría la imagen en el estado APAGADO y luego agregaría lo siguiente para activar el
td:not(#foo) > input[type=checkbox]:checked + label {
background: url('/images/on.png') 0 0px no-repeat;
}
Desafortunadamente, parece que me estoy perdiendo un paso crítico en alguna parte. Intenté usar la sintaxis del selector CSS3 personalizado para que coincida con mi configuración actual, pero debe faltar algo (las imágenes tienen un tamaño de 16x16 si eso importa)
http://www.w3.org/TR/css3-selectors/#checked
EDITAR: Me faltaba algo en el tutorial donde aplica el cambio de imagen a la etiqueta y no a la entrada en sí. Todavía no obtengo la imagen intercambiada esperada para el resultado de la casilla de verificación en la página, pero creo que estoy más cerca.