Css чекбокс: CSS стилизация checkbox и radio — 2 варианта

Содержание

Библиотека для стилизации чекбоксов на чистом css

Представляем на ваш суд отличную легкую библиотеку, созданную lokesh-coder и предназначенную для стилизации и кастомизации чекбоксов на чистом css.

Вот отличный пример, демонстрирующий возможности данной библиотеки:

Преимущества кастомизации чекбоксов и радиокнопок с помощью данной библиотеки:

  • Базовые
    • Фигуры — Квадрат, скругленная, круг
    • Варианты — Стандартный, заполненный, с тонкой обводкой
    • Цвета — primary, success, info, warning и danger
    • Варианты заполнения — заливка или обводка
    • Анимации — плавная, tada, jelly, pulse, с поворотом
  • Переключатель в стиле iOS
  • Адаптивность
  • Отсутствие javascript
  • Кастомный иконочный шрифт
  • Поддержка изображений
  • SVG иконки
  • Возможность переключения между иконками\svg\изображениями 
  • «Блокировка» для input type=»checkbox»
  • Поведения — focus, hover, indeterminate
  • Поддержка фреймворков таких как Bootstrap, Foundation, Semantic UI, Bulma . ..
  • Кастомизация с помощью SCSS 
  • Поддержка всех современных браузеров, в том числе мобильных устройств
  • Стили для печати

Установка

Установка через npm или yarn

> npm install pretty-checkbox // or
> yarn add pretty-checkbox

После этого добавить pretty-checkbox.min.css в html

Подключение без скачивания через CDN

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/pretty-checkbox.min.css"/>

Ручная загрузка

Загрузка исходного кода с GitHub 

SCSS

Также можете подключить pretty-checkbox.scss в ваш главный scss файл

@import '~pretty-checkbox/src/pretty-checkbox.scss';

Использование

Pretty Checkbox имеет множество встроенных стилей:

Название класса Описание
p-default Базовый стиль
p-switch  Переключатель в стиле iOS
p-icon Для вставки иконочного шрифта
p-svg Для вставки svg файла или разметки
p-image Для вставки изображения

И три возможных формы: p-round, p-curve, p-square (по умолчанию)

Пример кастомизированного чекбокса на codepen

See the Pen default pretty-checkbox by Alexey (@leshkacho) on CodePen.

Базовый чекбокс имеет три варианта начертания p-fill p-thick p-outline (по умолчанию)

Эти стили можно комбинировать:

See the Pen basic styles and combines pretty-checboxes by Alexey (@leshkacho) on CodePen.

Рассмотрим checkbox в виде переключателя в стиле iOS

See the Pen KZwoyq by Alexey (@leshkacho) on CodePen.

Вставка иконок, svg, и картинок

<!--Иконочный шрифт-->
	  <div>
		<input type="checkbox">
		<div>
		  <i></i>
		  <label>Check me</label>
		</div>
	  </div>
<!--svg-->
	  <div>
		<input type="checkbox">
		<div>
		  <img src="file.
svg" /> <label>Check me</label> </div> </div> <!--Так же поддерживается вставка svg с помощью тегов в тело документа--> <!--Картинка--> <div> <input type="checkbox" /> <div> <img src="/check.png" /> <label>Block</label> </div> </div>

Цветовая схема

Существует 5 основных цветов для отображения чекбокса: p-primary p-success p-warning p-info p-danger

А так же 5 цветов для линии обводки

p-primary-o p-success-o p-warning-o p-info-o p-danger-o

Подробное представление:

See the Pen YYPaOK by Alexey (@leshkacho) on CodePen.

Анимации

See the Pen pretty-checkboxes animation by Alexey (@leshkacho) on CodePen.

Добавление анимация на чекбокс происходит путем добавления описанных в примере классов

Другие возможности

Переключатели

Возможно создание переключателей с заменой текста, иконки только на css!

Происходит это следующим образом

See the Pen toggle pretty-checkboxes by Alexey (@leshkacho) on CodePen.

Можно использовать разные иконки для обоих состояний переключателя

Кастомизация радио-кнопок на чистом css без js

радио кнопки добавляются идентично чекбоксам и с ними работают такие же классы

GitHub проекта Полная документация Скачать архивом с GitHub

Псевдокласс :checked | CSS | WebReference

Псевдокласс :checked применяется к элементам интерфейса, таким как переключатели (checkbox), флажки (radio) и пункты списка (option), когда они находятся в положение «включено».

Переключение элементов в такое состояние происходит с помощью атрибута checked элемента <input> или пользователем.

Синтаксис

Селектор:checked { ... }

Примеры использования

input[type="radio"]:checked { ... }

Стиль применяется только ко включенным переключателям.

input[type="checkbox"]:checked { ... }

Стиль применяется только к помеченным флажкам (чекбоксам).

option:checked { ... }

Стиль применяется только к выбранным элементам списка.

Синтаксис
Описание Пример
<тип> Указывает тип значения. <размер>
A && B Значения должны выводиться в указанном порядке. <размер> && <цвет>
A | B Указывает, что надо выбрать только одно значение из предложенных (A или B). normal | small-caps
A || B Каждое значение может использоваться самостоятельно или совместно с другими в произвольном порядке. width || count
[ ] Группирует значения. [ crop || cross ]
* Повторять ноль или больше раз. [,<время>]*
+ Повторять один или больше раз. <число>+
? Указанный тип, слово или группа не является обязательным. inset?
{A, B} Повторять не менее A, но не более B раз. <радиус>{1,4}
# Повторять один или больше раз через запятую. <время>#

Пример

<!DOCTYPE html> <head> <meta charset=»utf-8″> <title>checked</title> <style> input:checked + span { background: #fc0; } </style> </head> <body> <p><strong>С какими операционными системамы вы знакомы?</strong></p> <p><input type=»checkbox» name=»a1″><span>Windows 7</span><br> <input type=»checkbox» name=»a2″><span>Windows Vista</span><br> <input type=»checkbox» name=»a3″><span>Windows XP</span><br> <input type=»checkbox» name=»a4″><span>System X</span><br> <input type=»checkbox» name=»a5″><span>Linux</span><br> <input type=»checkbox» name=»a6″><span>Mac OS</span></p> <p><input type=»submit» value=»Отправить»></p> </body> </html>

В данном примере текст возле отмеченных флажков выделяется фоновым цветом. Результат примера показан на рис. 1.

Рис. 1. Результат использования псевдокласса :checked

Спецификация

Спецификация Статус
WHATWG HTML Living Standard Живой стандарт
HTML5 Предлагаемая рекомендация
Selectors Level 4 Рабочий проект
CSS Basic User Interface Module Level 3 Рабочий проект
Selectors Level 3 Рекомендация
Спецификация

Каждая спецификация проходит несколько стадий одобрения.

  • Recommendation (Рекомендация) — спецификация одобрена W3C и рекомендована как стандарт.
  • Candidate Recommendation (Возможная рекомендация) — группа, отвечающая за стандарт, удовлетворена, как он соответствует своим целям, но требуется помощь сообщества разработчиков по реализации стандарта.
  • Proposed Recommendation (Предлагаемая рекомендация) — на этом этапе документ представлен на рассмотрение Консультативного совета W3C для окончательного утверждения.
  • Working Draft (Рабочий проект) — более зрелая версия черновика после обсуждения и внесения поправок для рассмотрения сообществом.
  • Editor’s draft (Редакторский черновик) — черновая версия стандарта после внесения правок редакторами проекта.
  • Draft (Черновик спецификации) — первая черновая версия стандарта.

Браузеры

9 12 1 9 3.1 1
2.1 1 9.5 3.1
Браузеры

В таблице браузеров применяются следующие обозначения.

  • — элемент полностью поддерживается браузером;
  • — элемент браузером не воспринимается и игнорируется;
  • — при работе возможно появление различных ошибок, либо элемент поддерживается с оговорками.

Число указывает версию браузреа, начиная с которой элемент поддерживается.

Псевдоклассы Формы

См. также

  • Аккордеон меню
  • Вкладки на CSS
  • Выпадающее меню
  • Использование :checked
  • Спойлер
  • Стилизация переключателей
  • Стилизация флажков

Флажок — Spectrum CSS

Направление

Версия Vars

Статус компонента

Вклад

Последний выпуск 11 мая 2023 г.
Текущая версия @spectrum-css/checkbox @6.0.29

Веб-сайт Spectrum

GitHub


  • Флажки позволяют пользователям выбирать несколько элементов из списка отдельных элементов или помечать один отдельный элемент как выбранный.
  • Флажки не следует использовать сами по себе, их всегда следует использовать в группе полей.
  • Недопустимые флажки обозначаются предупреждением HelpText при включении в группу полей.

Стандартный

Проверенный

По умолчанию
Флажок
Флажок
Флажок

Неверный
Флажок
Флажок
Флажок

Отключено
Флажок
Флажок
Флажок

Только чтение
Флажок
Флажок
Флажок

Показать разметку

 
<дел>
По умолчанию
<метка> <тип ввода="флажок"> <диапазон> Флажок
<метка> <тип ввода = "флажок" отмечен> <диапазон> Флажок
<метка> <тип ввода="флажок"> <диапазон> Флажок
<дел>
Неверно
<метка> <тип ввода="флажок"> <диапазон> Флажок
<метка> <тип ввода = "флажок" установлен> <диапазон> Флажок
<метка> <тип ввода="флажок"> <диапазон> Флажок
<дел>
Отключено
<метка> <тип ввода = "флажок" отключен> <диапазон> Флажок
<метка> <диапазон> Флажок
<метка> <тип ввода = "флажок" отключен> <диапазон> Флажок
<дел>
Только для чтения
<метка> <тип ввода = "флажок" отключен> <диапазон> Флажок
<метка> <диапазон> Флажок
<метка> <тип ввода = "флажок" отключен> <диапазон> Флажок