Input html readonly: Атрибут readonly | htmlbook.ru

Атрибут HTML:только для чтения Булевский атрибут readonly,когда он присутствует,делает элемент не изменяемым,то есть пользователь может редактировать управление.


Булевский атрибут readonly,когда он присутствует,делает элемент не изменяемым,то есть пользователь не может редактировать элемент управления.Если атрибут readonly указан для элемента ввода,поскольку пользователь не может редактировать ввод,элемент не участвует в проверке ограничений.

Вы можете нацелить элементы,которые доступны только для чтения,с помощью псевдокласса :read-only,а для записи-с помощью псевдокласса :read-write.Или,если вы хотите специально нацелиться на наличие атрибута,вы можете использовать input[readonly]и input:not([readonly]).

В функции обработчика события кнопки add мы вызываем метод setAttribute()элемента input для добавления атрибута readonly.В функции обработчика события кнопки удаления мы вызываем метод removeAttribute()элемента ввода для удаления атрибута readonly.


Атрибут Boolean readonly

, если он присутствует, делает элемент неизменяемым, то есть пользователь не может редактировать элемент управления.

Если атрибут readonly указан в элементе ввода, поскольку пользователь не может редактировать ввод, элемент не участвует в проверке ограничений.

readonly атрибута поддерживается text , search , url , tel , email , password , date , month , week , time , datetime-local и number <input> типов и <textarea> Элементы управления формой. Если присутствует в любом из этих типов ввода и элементов, псевдокласс :read-only будет соответствовать. Если атрибут не включен, псевдокласс :read-write будет соответствовать.

Атрибут не поддерживается или не имеет отношения к

<select> или типам ввода, которые уже не изменяются, например флажку и радио, или не могут по определению начинаться со значения, такого как тип ввода файла . диапазон и цвет , так как оба имеют значения по умолчанию. Он также не поддерживается для скрытых, так как нельзя ожидать, что пользователь заполнит скрытую форму. Он также не поддерживается ни одним из типов кнопок, включая image .

Примечание. Только текстовые элементы управления можно сделать доступными только для чтения, поскольку для других элементов управления (например, флажков и кнопок) нет полезного различия между режимом только для чтения и отключением, поэтому атрибут readonly не применяется.

Когда вход имеет атрибут readonly

, псевдокласс :read-only также применяется к нему. И наоборот, входные данные, которые поддерживают атрибут readonly , но не имеют набора атрибутов, соответствуют псевдоклассу :read-write .

Attribute interactions

Разница между disabled и readonly является то , что только для чтения управления может функционировать и по — прежнему фокусируемые, в то время как контроль инвалидов не может получить фокус и не представлены с формой и , как правило , не функционирует как элементы управления , пока они не будут включены.

Поскольку значение поля только для чтения не может быть изменено взаимодействием с пользователем, required не оказывает никакого влияния на входные данные с также readonly атрибутом только для чтения.

Единственный способ динамического изменения значения атрибута readonly-это сценарий.

Примечание: required атрибут не допускается на входах с readonly атрибута , указанного.

Usability

Браузеры отображают атрибут только для readonly

Constraint validation

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

Example

HTML

<div>
  <input type="text" value="Some value" readonly="readonly"/>
  <label for="text">Text box</label>
</div>
<div>
  <input type="date" value="2020-01-01" readonly="readonly"/>
  <label for="date">Date</label>
</div>
<div>
  <input type="email" value="Some value" readonly="readonly"/>
  <label for="email">Email</label>
</div>
<div>
  <input type="password" value="Some value" readonly="readonly"/>
  <label for="pwd">Password</label>
</div>
<div>
  <textarea readonly="readonly">Some value</textarea>
  <label for="ta">Message</label>
</div>

Result

Specifications

Specification
Стандарт HTML
# атрибут только для чтения

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebView AndroidChrome AndroidFirefox для AndroidOpera AndroidSafari на IOSSamsung Internet
readonly

1

12

1

≤6

≤12. 1

≤4

4.4

18

4

≤12.1

≤3

1.0

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebView AndroidChrome AndroidFirefox для AndroidOpera AndroidSafari на IOSSamsung Internet
readonly

1

12

1

5.5

≤12.1

1

4.4

18

4

≤12.1

1

1.0

html.elements.input.readonly

Таблицы BCD загружаются только в браузере

html.elements.textarea.readonly

Таблицы BCD загружаются только в браузере

See also

  • :read-only :read-write и : чтение-запись
  • <input>
  • <select>


HTML
  • Атрибут HTML:множественный

    Атрибут Boolean multiple,если он установлен,означает,что элемент управления формой принимает еще одно значение.

  • Атрибут HTML:шаблон

    Атрибут шаблона указывает, что значение элемента управления формы регулярного выражения должно совпадать.

  • Атрибут HTML:rel

    Атрибут rel определяет связь между связанным ресурсом и текущим документом.

  • Non-standard values

    Определяет значок для веб-приложения на устройстве iOS.

  • 1
  • 14
  • 15
  • 16
  • 17
  • 18
  • 258
  • Next

: только для чтения | Коддропс

:только для чтения — это селектор псевдокласса CSS , который соответствует любому элементу, не соответствующему селектору :чтение-запись

.

Другими словами, он соответствует элементам, недоступным для редактирования пользователем. Элементы, попадающие в редактируемую категорию, включают:

  • элемента (любого типа), которые не доступны только для чтения и не отключены. Это означает, что у них нет ни установлен атрибут только для чтения, а не отключенный атрибут .
  • Ниже приведены примеры элементов, которые могут быть выбраны , а не , с использованием :только для чтения — это элементы, которые можно выбрать с помощью :чтение-запись :

    <тип ввода="текст">
    
    <тип ввода="число">
    
    
    
    

    Несмотря на то, что это поведение рекомендуется спецификацией, поведение браузеров, по-видимому, различается: то, что считается чтением и записью в одном браузере, считается доступным только для чтения в другом, и поэтому стили, которые вы применяете, используя

    :read-write может не применяться в некоторых браузерах, а стили, которые вы применяете с помощью :read-only , могут применяться к элементам, которые должны соответствовать :read-write . Для получения дополнительной информации об этом, пожалуйста, обратитесь к разделу «Поддержка браузера» ниже и просмотрите живую демонстрацию для живого примера того, как ваш браузер обрабатывает элементы.

    Общая информация и заметки

    Как и другие селекторы псевдоклассов, селектор :read-only может быть связан с другими селекторами, такими как :hover и с псевдоэлементами, такими как ::after , среди прочего. Например, следующее правило предоставит :hover стилей для (обычного) div на странице:

    div: только для чтения: наведите {
        цвет фона: #eee;
    }
    
    div: только для чтения: до {
        содержание: "?";
        цвет: темно-розовый;
    }
                     

    Примеры

    Все следующие действительны :только для чтения объявлений:

    .элемент: только для чтения: после {
        content: "Подпишись!";
        /* . .. */
    }
    
    ввод: только для чтения {
        цвет фона: #ааа;
        граница: 1px сплошная #888;
    }
    
    текстовая область: только для чтения: наведение {
        курсор: не разрешено;
    }
                     

    Живая демонстрация

    Следующая демонстрация применяет красную рамку к элементам, которые соответствуют :read-only , и применяет зеленую рамку к элементам, которые соответствуют : чтение-запись . Элементы, которые не соответствуют ни одному из двух селекторов псевдоклассов, имеют серую рамку. Результат может отличаться в зависимости от используемого вами браузера. См. подробности в разделе «Поддержка браузера» ниже.

    Посмотреть эту демонстрацию на игровой площадке Codrops

    Поддержка браузера

    Селектор псевдокласса :только для чтения поддерживается в Chrome, Edge, Safari и Opera 14+, а также на iOS.

    Поддерживается с 9Префикс 0003 -moz- в Firefox в виде :-moz-read-write .

    Селектор :read-only не поддерживается в Internet Explorer и Android.

    Примечания

    В Chrome, Firefox, Safari и Opera input , которые отключены (имеют установленный атрибут disabled ), обрабатываются как чтение-запись, а не только чтение, в отличие от того, что указано в спецификации. Таким образом, отключенные элементы не будут соответствовать :только для чтения в этих браузерах, даже если они должны.

    Дополнительная литература

    • Базовый модуль пользовательского интерфейса CSS, уровень 3
    • Отключенные элементы — HTML5

    Автор Сара Суэйдан. Последнее обновление сделано Маноэлой Илич 17 марта 2017 г. в 12:31.

    У вас есть предложение, вопрос или вы хотите внести свой вклад? Отправить вопрос.

    Дизайн веб-сайта

    — передовой опыт — только для чтения или отключено в элементах управления формой

    спросил

    Изменено 2 года, 1 месяц назад

    Просмотрено 21к раз

    Я работаю над веб-сайтом/веб-службой. В одной из моих форм пользователю нужно ввести 2 значения: A и B. Затем, когда пользователь нажимает кнопку отправки, некоторая информация появляется в отдельном представлении рядом с формой.

    У меня есть дополнительный параметр C, этот параметр получает свое значение из A и B (в результате некоторых математических вычислений). Как только пользователь изменит A или B, C будет автоматически обновлен.

    Пользователь не может напрямую обновить значение C (только путем обновления A и/или B).

    Я не могу решить, должен ли элемент управления формы (текстовое поле) находиться в состоянии ReadOnly или Disable.

    Я заметил, что как ReadOnly, так и Disable дают одинаковый результат: пользователь может прочитать значение из текстового поля, но не может его редактировать. В случае ReadOnly элемент текстового поля выглядит так же, как обычное текстовое поле, в то время как в случае Disabled текстовое поле отображается серым, поэтому пользователь может понять, что это текстовое поле недоступно для редактирования.

    Теперь, когда и ReadOnly, и Disabled обеспечивают одинаковое поведение (с разным внешним видом), я не знаю, что выбрать? Каковы рекомендации по выбору между ReadOnly и Disabled? Когда я должен предпочесть использовать один над другим???

    Нативное текстовое поле

    Текстовое поле Material Design

    • веб-дизайн
    • disabled

    Использование элемента управления формы подразумевает, что в какой-то момент пользователь может напрямую изменить его (щелкнув/нажав на него), что здесь не так.

    Для меня, хотя C является значением, основанным на других входных данных, его можно считать просто текстом и отображать как таковой.

    Только для чтения

    • Этот атрибут указывает, что пользователь не может изменять значение элемента управления. Значение атрибута не имеет значения.
    • Атрибут «только для чтения» игнорируется, если значение атрибута type скрыто, диапазон , цвет, флажок , радио , файл или кнопка тип (например, кнопка или отправка).
    • Браузер не добавляет визуального стиля для элементов «только для чтения».

    Отключено

    • Этот атрибут указывает на то, что элемент управления формы недоступен для взаимодействия.
    • Событие click не будет отправляться для отключенных элементов управления.
    • Значение элемента управления «отключено» не будет отправлено с формой.
    • Отключенные элементы формы не получают фокуса и поэтому пропускаются при навигации по вкладкам.
    • Большинство браузеров (Chrome, Firefox, Edge, IE и другие) добавляют некоторые стили (выделены серым цветом) к отключенным элементам.

    Взаимодействие с пользователем

    Поскольку атрибуты ReadOnly и Disabled дают пользователю возможность просматривать значение элемента, но не изменять его. В то время как один из них — отключенный — обеспечивает визуальную обратную связь, дизайнер должен выбрать, может ли пользователь различать стандартный элемент и немодифицированный элемент.
    Если вы хотите, чтобы пользователь определил, что элемент находится в неизменяемом режиме, используйте «отключено».
    Если вы хотите, чтобы немодифицированный элемент отображался как остальные элементы формы, используйте «только для чтения».

    Функционально

    Только для чтения Элементы управления не могут быть изменены пользователем.

    Отключено Элементы управления не могут быть изменены пользователем или взаимодействовать с — вкладкой, фокусом, включенным в отправку формы (исключение: текст все еще может быть выделен). Кроме того, они имеют приглушенный стиль.

    Передовая практика

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

    Использовать отключено для значений, которые в настоящее время не применимы, но могут быть включены в другом состоянии.

    Например, в вашем случае имеет смысл ввод только для чтения. Элемент управления такой же, как и другие, за исключением того, что пользователь не может напрямую изменять его.

    В другом примере предположим, что я заказываю кружку и могу добавить к ней пользовательское сообщение. Я бы использовал отключенный ввод для сообщения, потому что это не имеет значения, пока я не включу флажок.

    Если вы разрешите ввод только для чтения, а не в отключенном, пользователь будет думать, что если он отредактирует значение C, то значения A и B будут изменены.

    Если входы значений A, B и C имеют одинаковый стиль, то пользователи не будут делать разницы между редактируемым вводом и нередактируемым вводом.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *