У меня есть список флажков в таблице. (один из ряда CB в строке)
<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>
Я хотел бы заменить изображение флажка парой пользовательских вкл/выкл изображений, и мне было интересно, если кто-то лучше понял, как это сделать с помощью CSS?
Я нашел этот учебник "CSS ниндзя", но я должен признать, что это немного сложно для меня. http://www.thecssninja.com/css/custom-inputs-using-css
Насколько я могу судить, вам разрешено использовать псевдокласс
td:not(#foo) > input[type=checkbox] + label
{
background: url('/images/off.png') 0 0px no-repeat;
height: 16px;
padding: 0 0 0 0px;
}
Мое предположение состояло в том, что, добавив вышеприведенный CSS, флажок по крайней мере по умолчанию отображал бы изображение в состоянии OFF, а затем я добавил бы следующее, чтобы получить ON
td:not(#foo) > input[type=checkbox]:checked + label {
background: url('/images/on.png') 0 0px no-repeat;
}
К сожалению, кажется, что я где-то пропустил критический шаг. Я попытался использовать собственный синтаксис селектора CSS3 для соответствия моей текущей настройке, но должен что-то упустить (изображения размером 16x16, если это имеет значение)
http://www.w3.org/TR/css3-selectors/#checked
EDIT: Я упустил что-то в учебнике, где он применяет изменение изображения к метке, а не сам ввод. Я все еще не получаю ожидаемое изображение с заменой для результата checkbox на странице, но думаю, что я ближе.