:required ⚡️ HTML и CSS с примерами кода
Псевдокласс :required
применяет стилевые правила к элементу <input>
, у которого установлен атрибут required
, он позволяет выделять поля обязательные к заполнению перед отправкой формы.
- :active
- :any-link
- :blank
- :checked
- :current()
- :default
- :defined
- :dir()
- :disabled
- :empty
- :enabled
- :first
- :first-child
- :first-of-type
- :focus
- :focus-visible
- :focus-within
- :fullscreen
- :future
- :has()
- :host
- :host()
- :host-context()
- :hover
- :indeterminate
- :in-range
- :invalid
- :is()
- :lang()
- :last-child
- :last-of-type
- :left
- :link
- :local-link
- :not()
- :nth-child()
- :nth-col()
- :nth-last-child()
- :nth-last-col()
- :nth-last-of-type()
- :nth-of-type()
- :only-child
- :only-of-type
- :optional
- :out-of-range
- :past
- :placeholder-shown
- :read-only
- :read-write
- :required
- :right
- :root
- :scope
- :target
- :target-within
- :user-invalid
- :valid
- :visited
- :where()
Синтаксис
input:required { /* . .. */ }
Спецификации
- HTML Living Standard
- HTML5
- Selectors Level 4
- CSS Basic User Interface Module Level 3
Пример
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>Комментарии</title> <style> #comment p { margin: 0 0 5px; /* Отступ снизу */ } #comment label { width: 110px; /* Ширина текста */ float: left; /* Выстраиваем по горизонтали */ text-align: right; /* Текст по правому краю */ padding-right: 10px; /* Поле справа */ } #comment input[type='text'], #comment textarea { width: 320px; /* Ширина текстовых полей */ } input:required { border: 1px solid red; /* Красная рамка для обязательных полей */ } </style> </head> <body> <form> <p> <label for="user">Имя</label> <input type="text" required /> </p> <p> <label for="email">E-mail</label ><input type="text" /> </p> <p> <label for="text">Комментарий</label> <textarea cols="40" rows="10"></textarea> </p> <p> <label> </label ><input type="submit" value="Отправить" /> </p> </form> </body> </html>
В данном примере обязательным считается поле для ввода имени, оно выделяется красной рамкой за счёт применения псевдокласса :required
. Результат:
См. также
- :optional
- :invalid
- :valid
Ссылки
- Псевдо-класс :required MDN (рус.)
CSS — Псевдокласс :required
Применяет стилевые правила к элементу <input>, у которого установлен атрибут required. Он позволяет выделять поля обязательные к заполнению перед отправкой формы.
Синтаксис ?
input:required { ... }
✖
Обозначения
Описание | Пример | |
---|---|---|
<тип> | Указывает тип значения. | <размер> |
A && B | Значения должны выводиться в указанном порядке. | <размер> && <цвет> |
A | B | Указывает, что надо выбрать только одно значение из предложенных (A или B). | normal | small-caps |
A || B | Каждое значение может использоваться самостоятельно или совместно с другими в произвольном порядке. | width || count |
[ ] | Группирует значения. | [ crop || cross ] |
* | Повторять ноль или больше раз. | [,<время>]* |
+ | Повторять один или больше раз. | <число>+ |
? | Указанный тип, слово или группа не является обязательным. | inset? |
{A, B} | Повторять не менее A, но не более B раз. | <радиус>{1,4} |
# | Повторять один или больше раз через запятую. | <время># |
Пример
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Комментарии</title> <style> #comment p { margin: 0 0 5px; /* Отступ снизу */ } #comment label { width: 110px; /* Ширина текста */ float: left; /* Выстраиваем по горизонтали */ text-align: right; /* Текст по правому краю */ padding-right: 10px; /* Поле справа */ } #comment input[type="text"], #comment textarea { width: 320px; /* Ширина текстовых полей */ } input:required { border: 1px solid red; /* Красная рамка для обязательных полей */ } </style> </head> <body> <form action="handler. php"> <p><label for="user">Имя</label> <input type="text" name="user" required></p> <p><label for="email">E-mail</label><input name="email" type="text"></p> <p><label for="text">Комментарий</label> <textarea cols="40" rows="10" name="text"></textarea></p> <p><label> </label><input type="submit" value="Отправить"></p> </form> </body> </html>
В данном примере обязательным считается поле для ввода имени, оно выделяется красной рамкой за счёт применения псевдокласса :required. Результат примера в Safari 5 показан на рис. 1.
Рис. 1. Использование псевдокласса :required
Спецификация ?
Спецификация | Статус |
---|---|
WHATWG HTML Living Standard | Живой стандарт |
HTML5 | Возможная рекомендация |
Selectors Level 4 | Рабочий проект |
CSS Basic User Interface Module Level 3 | Рабочий проект |
✖
Спецификация
Каждая спецификация проходит несколько стадий одобрения.
- Recommendation (Рекомендация) — спецификация одобрена W3C и рекомендована как стандарт.
- Candidate Recommendation (Возможная рекомендация) — группа, отвечающая за стандарт, удовлетворена, как он соответствует своим целям, но требуется помощь сообщества разработчиков по реализации стандарта.
- Proposed Recommendation (Предлагаемая рекомендация) — на этом этапе документ представлен на рассмотрение Консультативного совета W3C для окончательного утверждения.
- Working Draft (Рабочий проект) — более зрелая версия черновика после обсуждения и внесения поправок для рассмотрения сообществом.
- Editor’s draft (Редакторский черновик) — черновая версия стандарта после внесения правок редакторами проекта.
- Draft (Черновик спецификации) — первая черновая версия стандарта.
Браузеры: Настольные Мобильные
?Internet Explorer | Chrome | Opera | Safari | Firefox |
10 | 10 | 10 | 5 | 4 |
Android | Firefox Mobile | Opera Mobile | Safari Mobile |
4 | 4 | 10 | 5 |
✖
Браузеры
В таблице браузеров применяются следующие обозначения.
- — элемент полностью поддерживается браузером;
- — элемент браузером не воспринимается и игнорируется;
- — при работе возможно появление различных ошибок, либо элемент поддерживается с оговорками.
Число указывает версию браузреа, начиная с которой элемент поддерживается.
Формы | Псевдоклассы
: требуется | Коддропс
:required
— это селектор псевдокласса CSS , используемый для выбора необходимых элементов формы.
В частности, он используется для выбора элементов формы, для которых установлен обязательный атрибут
.
Элементы формы, которые можно выбрать с помощью :required
:
s,
с и с без обязательного атрибута
.
Например, с помощью :required
можно выбрать следующие элементы формы:
<Требуется тип ввода = "имя"> <Тип ввода = "флажок" требуется> <выберите имя = "нм" требуется> выбрать>
Следующие элементы формы могут быть выбраны , а не , используя :required
, потому что для них не установлен атрибут required
:
<тип ввода="текст"> <тип ввода="отправить"> <выбрать имя="нм"> выбрать>
:required
полезен для стилизации обязательных элементов формы, чтобы привлечь к ним больше визуального внимания, чтобы пользователь знал, что они обязательны и должны быть заполнены.
Общая информация и заметки
Если вы хотите выбрать необязательные элементы формы, вы можете использовать селектор псевдокласса :факультативный
.
Как и другие селекторы псевдоклассов, 9Селектор 0003 :required может быть связан с другими селекторами, такими как :hover
и с псевдоэлементами, такими как ::after
, среди прочих. Например, следующее правило предоставит :focus
стилей для необходимой текстовой области:
текстовая область: требуется: фокус { /* содержимое и стили здесь */ }
Примеры
Следующее применит красную рамку к полю ввода электронной почты. Это поле обычно требуется в контактных формах, чтобы владелец веб-сайта мог ответить тому, кто отправил форму.
ввод [тип = "электронная почта"]: требуется { граница: 2px твердый помидор; }
Следующее применит красный цвет к меткам обязательных полей ввода (если метка идет сразу после ввода в исходном порядке):
ввод: требуется + метка { цвет: помидор; вес шрифта: полужирный; }
Живая демонстрация
В следующем демо оба 9Селекторы псевдоклассов 0003 :required и :Optional
используются для стилизации необязательных и обязательных элементов формы, соответственно, чтобы требуемые формы выделялись визуально.
Посмотреть эту демонстрацию на игровой площадке Codrops
Служба поддержки браузера
Селектор псевдокласса : необязательный
поддерживается в Chrome 10+, Firefox, Safari, Opera 10+, Internet Explorer 10+, а также на Android и iOS.
Дополнительная литература
- Базовый модуль пользовательского интерфейса CSS
- Отключенные элементы — HTML5
Автор Сара Суэйдан. Последнее обновление сделано Маноэлой Илич 3 февраля 2015 г. в 12:33.
У вас есть предложение, вопрос или вы хотите внести свой вклад? Отправить вопрос.
html — добавьте «*» к метке полей ввода с атрибутом «обязательный» с помощью CSS
спросил
Изменено 3 года, 9 месяцев назад
Просмотрено 12 тысяч раз
Мне интересно, есть ли способ, используя только CSS, добавить звездочку к элементу label , когда атрибут label for
с требуется атрибут
html. В качестве альтернативы мы могли бы использовать логику, если за меткой
непосредственно следует элемент ввода
, который имеет обязательный атрибут
. Работает что-то вроде этого:
ввод [обязательно] + метка: после { содержание: '*'; красный цвет; }
<форма> <дел>