Загалом :checked застосовується таким чином (приклад 1).
Приклад 1. Використання :checked
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>:checked</title> <style> :checked { border: 2px solid red; /* Параметри рамки */
color: #fff; /* Колір тексту */
background: #333; /* Колір тла */
}
</style>
</head>
<body> <p><input type="radio" name="yesno" checked> Так <input type="radio" name="yesno"> Ні</p> <p><input type="checkbox" checked> Згоден</p> <p><select> <option>Леонардо</option> <option>Рафаель</option> <option>Донателло</option> <option>Мікеланджело</option>
</select></p>
</body>
</html>У цьому прикладі є прапорець, перемикач і список <select>. Псевдоклас :checked вказаний без селектора попереду, тому буде застосовуватися до всіх можливих елементів.
Самі поля форм погано стилізуються, зокрема Chrome змінюється лише колір тексту і тла у <option> (рис. 1а), Firefox взагалі ніяк не змінює стиль елементів (рис. 1б).
![]() | ![]() |
| a. Chrome | б. Firefox |
Мал. 1. Поля форм у браузері
Щоб якось активно використовувати :checked йдуть на хитрість і стилізують не сам < input>, а елемент <label>. Для цього відразу після <input> вставляємо <label> і зв'язуємо ці два елементи за допомогою однакового значення у атрибутів id та for (приклад 2).
Приклад 2. Використання <label> ;
<input type="checkbox" id="switch" checked> <label for="switch">Прапорець</label>
Оскільки ми пов'язали між собою ці елементи, то можна клацати вже за текстом і прапорець буде включатися або вимикатися. Тепер <input> та <label> є суміжними елементами, так що в стилях їх теж можна зв'язати між собою.
input[type="checkbox"]:checked + label { … }Тут стильові параметри застосовуються до елемента <label>, який йде відразу після елемента <input type="checkbox">, і для якого увімкнено прапорець . У прикладі 3 показано використання :checked для зміни кольору тексту.
Приклад 3. Суміжні селектори
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>:checked</title> <style> [type="checkbox"]:checked + label { color: red; /* Червоний колір тексту */
}
</style>
</head>
<body> <p><input type="checkbox" id="switch" checked> <label for="switch">Прапорець</label></p>
</body>
</html>Результат цього прикладу показаний на рис. 2.

Мал. 2. Стилізація <label>


