html — селектор только для чтения не работает с тегом select?
спросил
Изменено 4 года, 2 месяца назад
Просмотрено 3к раз
Я пытался сделать тег выбора только для чтения, что означает, что его нельзя выбрать, когда я пытаюсь добавить атрибут только для чтения, он работает нормально, но также применяется к тегу выбора, у которого нет атрибута только для чтения, я думаю, что я неправильное применение селектора,
Я не могу отключить его, потому что он не будет отправляться вместе с деталями формы, это то, что я пробовал в редакторе w3school: —
select: -moz-только для чтения { /* Для Firefox */ события-указатели: нет; } выбрать: только для чтения { события-указатели: нет; }
ПРИНЯТО
<выбрать только для чтения> <опция>1 <опция>2 <опция>3
UNACCEPTED : здесь также применяется селектор
<выбрать> <опция>1 <опция>2 <опция>3
- html
- css
Вам необходимо назначить уникальный идентификатор, такой как класс
или идентификатор , чтобы специально сделать первый тег выбора
только для чтения
, а не оба. . например , здесь, я использую тег и селектор атрибутов для выбора тегов, которые имеют атрибут только для чтения
select[только для чтения]:-moz-только для чтения { /* Для Firefox */ события-указатели: нет; } выберите [только для чтения]: только для чтения { события-указатели: нет; }
ПРИНЯТО
<выбрать только для чтения> <опция>1 <опция>2 <опция>3
UNACCEPTED : здесь также применяется селектор
<выбрать> <опция>1 <опция>2 <опция>3
Селектор, который вы используете, является селектором тегов и выберет любые выберите тег
и включите его только для чтения.
Добавление некоторых деталей на основе комментариев,
Вы можете отключить фокус вкладки, используя атрибут tabindex
со значением, установленным на false
в теге select
Кроме того, вы не должны полагаться на данные передается со стороны клиента, если он предназначен только для чтения. Вам необходимо иметь надлежащую проверку в бэкэнде, которая не позволит пользователю передавать какие-либо ложные или вредоносные данные. Независимо от того, что вы используете, простое решение HTML CSS, подобное приведенному выше, или отключение клавиш с помощью JavaScript, вы не можете запретить пользователю изменять значение тега.
В соответствии со спецификацией элемент
считается доступным только для чтения
, поскольку пользователь не может явно редактировать его.
Псевдокласс :read-write должен соответствовать любому элементу, попадающему в одну из следующих категорий, которые для целей селекторов считаются изменяемыми пользователем: [SELECTORS]
- входные элементы, к которым применяется атрибут только для чтения и которые являются изменяемыми (т. е. не имеют указанного атрибута только для чтения и не отключены)
- textarea элементы, не имеющие атрибута readonly и не отключенные
- элементы , которые являются редактируемыми хостами или редактируемыми и не являются ни элементами ввода, ни элементами textarea
Псевдокласс :только для чтения должен соответствовать всем другим элементам HTML.
Вместо этого следует использовать атрибут disabled
, чтобы указать, что пользователь не может взаимодействовать с элементом
. С отключен атрибут
, вам не нужно указывать дополнительный CSS, чтобы отключить взаимодействие мыши с элементом.
Вот как это будет работать:
ПРИНЯТО
<выбрать отключено> <опция>1 <опция>2 <опция>3
UNACCEPTED : здесь также применяется селектор
<выбрать> <опция>1 <опция>2 <опция>3
4
Зарегистрируйтесь или войдите в систему
Зарегистрироваться через Facebook
Зарегистрируйтесь, используя адрес электронной почты и пароль
Опубликовать как гость
Электронная почта
Требуется, но никогда не отображается
Опубликовать как гость
Электронная почта
Требуется, но не отображается
HTML-атрибут: только для чтения — HTML: язык гипертекстовой разметки
Логический атрибут только для чтения
, если он присутствует, делает элемент неизменяемым, то есть пользователь не может редактировать элемент управления.
Если для элемента ввода указан атрибут только для чтения
, поскольку пользователь не может редактировать ввод, элемент не участвует в проверке ограничения.
Атрибут только для чтения
поддерживается текст
, поиск
, URL
, тел
, электронная почта
, пароль 9002 6,
дата
, месяц
, неделя
, время
, datetime-local
и номер
и элементы управления формой
. Если присутствует в любом из этих входных типов и элементов, будет соответствовать псевдокласс
. Если атрибут не включен, будет соответствовать псевдокласс :только для чтения
. :чтение-запись
Атрибут не поддерживается или не относится к
или типам ввода, которые уже не являются изменяемыми, например, флажок и радио, или не могут по определению начинаться со значения, например типа ввода файла. диапазон и цвет, так как оба имеют значения по умолчанию. Он также не поддерживается для скрытых, так как нельзя ожидать, что пользователь заполнит скрытую форму. Он также не поддерживается ни для одного из типов кнопок, включая 9.0025 изображение .
Примечание: Только текстовые элементы управления можно сделать доступными только для чтения, поскольку для других элементов управления (таких как флажки и кнопки) нет полезного различия между доступом только для чтения и отключением, поэтому атрибут только для чтения
не применяется. .
Если вход имеет атрибут только для чтения
, к нему также применяется псевдокласс :только для чтения
. И наоборот, входные данные, которые поддерживают атрибут только для чтения
, но не имеют установленного атрибута, соответствуют :чтение-запись
псевдокласс.
Взаимодействия атрибутов
Разница между отключенным
и только для чтения
заключается в том, что элементы управления только для чтения могут по-прежнему функционировать и по-прежнему могут быть сфокусированы, в то время как отключенные элементы управления не могут получать фокус и не отправляются вместе с формой и, как правило, не работают как управления, пока они не будут активированы.
Поскольку поле, доступное только для чтения, не может изменить свое значение в результате взаимодействия с пользователем, требуется
, не влияет на ввод с помощью Также указан атрибут только для чтения
.
Единственным способом динамического изменения значения атрибута только для чтения является сценарий.
Примечание: Требуемый атрибут не разрешен для входных данных с указанным атрибутом
только для чтения .
Удобство использования
Браузеры отображают атрибут только для чтения.
Проверка ограничения
Если элемент доступен только для чтения, то значение элемента не может быть обновлено пользователем и не участвует в проверке ограничения.
HTML
<дел>