Кратко
СкопированоПсевдокласс :read используется для задания стилей полям ввода только для чтения. Другими словами - данные в этом поле ввода пользователь не может изменить или удалить. Поле ввода при этом получает фокус, а данные в поле можно выделить и скопировать.
Пример
СкопированоСтилизуем поля только для чтения, делая их визуально отличными от обычных полей:
input:read-only { background-color: #f5f5f5; color: #666; border-color: #ddd; cursor: not-allowed;}textarea:read-only { background-color: #f5f5f5; color: #666; border-color: #ddd; cursor: not-allowed;}
input:read-only {
background-color: #f5f5f5;
color: #666;
border-color: #ddd;
cursor: not-allowed;
}
textarea:read-only {
background-color: #f5f5f5;
color: #666;
border-color: #ddd;
cursor: not-allowed;
}
<input type="text" value="Это поле только для чтения" readonly><textarea readonly>Это текстовое поле тоже только для чтения</textarea><input type="text" value="Обычное поле для ввода">
<input type="text" value="Это поле только для чтения" readonly>
<textarea readonly>Это текстовое поле тоже только для чтения</textarea>
<input type="text" value="Обычное поле для ввода">
Как пишется
СкопированоПсевдокласс :read применяется к тегам для ввода текста (<input> или <textarea>) с атрибутом readonly. Также может быть применён к html-тегам, для которых установлен атрибут contenteditable.
После селектора для поля ввода текста (<input> и <textarea>) или селектора с атрибутом contenteditable ставим двоеточие и пишем ключевое слово read.
/* Базовый синтаксис */input:read-only { /* стили */}/* Для Firefox */input:-moz-read-only { /* стили */}
/* Базовый синтаксис */
input:read-only {
/* стили */
}
/* Для Firefox */
input:-moz-read-only {
/* стили */
}
Как понять
Скопировано:read применяется к элементам, которые пользователь не может редактировать, но может взаимодействовать с ними (получить фокус, выделить текст, скопировать содержимое).
Основные случаи использования:
- Поля с атрибутом
readonly- пользователь видит данные, но не может их изменить - Элементы с
contenteditable- контент нельзя редактировать= "false" - Системные поля - например, поля с автоматически вычисляемыми значениями
Отличие от :disabled:
:read- поле получает фокус, можно выделить и скопировать текст- only :disabled- поле не получает фокус, текст нельзя выделить
Подсказки
Скопировано💡 :read помогает визуально выделить поля только для чтения, например:
- Установите
cursor;: not - allowed - Используйте приглушённые цвета фона и текста.
💡:readхорошо работает вместе с- only :focusи:hoverдля создания интерактивных стилей.
- Chrome 1, поддерживается
- Edge 13, поддерживается
- Firefox 78, поддерживается
- Safari 4, поддерживается