Нашлось свободное время и решил я пополнить свой сайт новыми статьями. В этот раз хочу рассказать вам о том, как поменять внешний вид чекбоксов с помощью CSS. Вы узнаете, как, не применяя разных скриптов, изменить кардинально вид обычного унылого квадратного чекбокса.
Когда, то давно, для изменения внешних видов чекбокса использовались JavaScript-решения, но теперь уже это не нужно. С появлением CSS3, эта проблема отпала и уже дано. Тем неимение, многие не знают или просто не встречали возможного решения. Лично я, тоже не сразу узнал об этом методе, но уже где-то с 15 года использую его при верстках лендингов или каких-то форм. Если Вам не нравится то как выглядит обычный чекбокс и вы хотите придать ему более современный внешний вид, то нужно будет выполнить всего несколько действий. В итоге у вас получится так как на примере.
Такой стильный чекбокс делается с помощью псевдоселекторов :checked и :not. По своей сути мы будим эмулировать работу чекбокса, а сам чекбокс станет невидимым.
В первую очередь вам нужно определится с чекбоксом, который вы будете модифицировать. Если это будут все чекбоксы на сайте, то просто стили нужно добавлять классу чекбоксов, что и будет показано в примере. В общим, у вас будет чекбокс и он должен будет иметь несколько обязательных параметров. К примеру у Вас вот такой код:
class=check - добавляем класс, чтобы все чекбоксы у которых будет этот класс имели измененный вид.
id=newchec - добавляем айди, для того, чтобы подвязать к чекбоксу label. Так же, если вам нужно выделить лишь один чекбокс, то можете не добавлять класс, а прописывать стили для этого самого айди. Естественно, и класс и айди может иметь любое название.
label - вторая строка, которая отвечает за вывод метки к нашему чекбоксу. Ее наличие обязательно. Даже если вам не нужна метка, то всеравно нужно добавить label, даже пустой.
for=newchec - идентификатор элемента, с которым следует установить связь. В нашем случаи это наш чекбокс. Как понимаете Значение for должно соответствовать id нашего чекбокса.
Если вы правильно оформили будущий модифицированный чекбокс, то можно приступать к самому главному - добавление CSS стилей чекбоксу. В нашем случаи мы будем добавлять стили для класса check, который мы присвоили нашему чекбоксу.
Открываете файл стилей и добавляете туда такой кусок кода:
Для тех кто разбирается в CSS, становится все понятно после его осмотра. Чего-то сложного здесь нет. Для тех, кто еще не совсем легко в этом разбирается, немного распишу. Учить CSS я тут не буду, мне лень расписывать каждый параметр, для этого есть книжки по CSS.
Первым делом - задаем стили для старых версий браузера IE. Тут просто немного ровняется стандартный чекбокс.
Естественно, вы можете все менять на свой лад. Методом проб и ошибок подгоните все как нужно именно вам. Согласитесь, такой чекбокс намного симпатичнее стандартного. Если понравился данный метод, надеюсь вы используете его в будущем на своем сайте. В следующей статье покажу как схожим методом модифицировать круглую радиокнопку.