:checked
Селектор-псевдоклас CSS :checked
(позначений) представляє будь-який елемент radio (<input type="radio">
), checkbox (<input type="checkbox">
) або option (<option>
у <select>
), що має позначку або переключений у стан on
.
Спробуйте його в дії
Користувачі можуть задати цей стан, вибравши елемент, або зняти його, скасувавши вибір елемента.
Примітка: У зв'язку з тим, що браузери нерідко обробляють елементи
<option>
як заміщені елементи, то ступінь, до якого їх можна стилізувати за допомогою псевдокласу:checked
, у різних браузерах різний.
Синтаксис
:checked {
/* ... */
}
Приклади
Базовий приклад
HTML
<div>
<input type="radio" name="my-input" id="yes" value="yes" />
<label for="yes">Так</label>
<input type="radio" name="my-input" id="no" value="no" />
<label for="no">Ні</label>
</div>
<div>
<input type="checkbox" name="my-checkbox" id="opt-in" />
<label for="opt-in">Вибери мене!</label>
</div>
<select name="my-select" id="fruit">
<option value="opt1">Яблука</option>
<option value="opt2">Виноград</option>
<option value="opt3">Груші</option>
</select>
CSS
div,
select {
margin: 8px;
}
/* Підписи для позначених полів */
input:checked + label {
color: red;
}
/* Радіоелемент, коли вибраний *.
input[type="radio"]:checked {
box-shadow: 0 0 0 3px orange;
}
/* Елемент поля для галочки, коли має галочку */
input[type="checkbox"]:checked {
box-shadow: 0 0 0 3px hotpink;
}
/* Елементи варіантів, коли обрані */
option:checked {
box-shadow: 0 0 0 3px lime;
color: red;
}
Результат
Перемикання елементів за допомогою прихованого поля для галочки
Цей приклад використовує псевдоклас :checked
, щоб дати користувачам змогу перемикати вміст на основі стану поля для галочки, не використовуючи JavaScript.
HTML
<input type="checkbox" id="expand-toggle" />
<table>
<thead>
<tr>
<th>Колонка №1</th>
<th>Колонка №2</th>
<th>Колонка №3</th>
</tr>
</thead>
<tbody>
<tr class="expandable">
<td>[іще тексту]</td>
<td>[іще тексту]</td>
<td>[іще тексту]</td>
</tr>
<tr>
<td>[текст комірки]</td>
<td>[текст комірки]</td>
<td>[текст комірки]</td>
</tr>
<tr>
<td>[текст комірки]</td>
<td>[текст комірки]</td>
<td>[текст комірки]</td>
</tr>
<tr class="expandable">
<td>[іще тексту]</td>
<td>[іще тексту]</td>
<td>[іще тексту]</td>
</tr>
<tr class="expandable">
<td>[іще тексту]</td>
<td>[іще тексту]</td>
<td>[іще тексту]</td>
</tr>
</tbody>
</table>
<label for="expand-toggle" id="expand-btn">Перемкнути приховані ряди</label>
CSS
/* Приховати поле для галочки для перемикання */
#expand-toggle {
display: none;
}
/* Усталено приховати додатковий вміст */
.expandable {
visibility: collapse;
background: #ddd;
}
/* Оформити кнопку */
#expand-btn {
display: inline-block;
margin-top: 12px;
padding: 5px 11px;
background-color: #ff7;
border: 1px solid;
border-radius: 3px;
}
/* Показати прихований вміст, коли поле для галочки має галочку */
#expand-toggle:checked ~ * .expandable {
visibility: visible;
}
/* Оформити кнопку, коли поле для галочки має галочку */
#expand-toggle:checked ~ #expand-btn {
background-color: #ccc;
}
Результат
Специфікації
Сумісність із браузерами
desktop | mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
:checked
|
Chrome Full support 1 | Edge Full support 12 | Firefox Full support 1 | Internet Explorer Full support 9 | Opera Full support 9 | Safari Full support 3.1 | WebView Android Full support 2 | Chrome Android Full support 18 | Firefox for Android Full support 4 | Opera Android Full support 10.1 | Safari on iOS Full support 2 | Samsung Internet Full support 1.0 |
Дивіться також
- Вебформи – робота з користувацькими даними
- Оформлення вебформ
- Пов'язані елементи HTML:
<input type="checkbox">
,<input type="radio">
,<select>
і<option>
- Заміщені елементи