--- title: ':required' slug: 'Web/CSS/:required' translation_of: 'Web/CSS/:required' ---
A pseudo-classe CSS :required
representa qualquer {{HTMLElement("input")}}, {{HTMLElement("select")}}, ou {{HTMLElement("textarea")}} contendo o atributo {{ htmlattrxref("required", "input") }}.
/* Seleciona qualquer <input> requerido */ input:required { border: 1px dashed red; }
Esta pseudo-classe é utilizada para destacar campos que devem ter dados válidos antes do formulário ser submetido.
Nota: A pseudo-classe {{cssxref(":optional")}} seleciona campos do formulário que são opcionais.
Veja {{cssxref(":invalid")}} como exemplo.
Elementos {{htmlelement("input")}} obrigatórios devem ter o atributo {{ htmlattrxref("required", "input") }} atribuídos. Isso garante que pessoas que navegam com auxílio de recursos de acessibilidade, como o leitor de tela, possam entender quais campos precisam ter conteúdos válidos para garantir a submissão dos dados .
Se o formulário também possui campos opcionais, entradas requeridas devem ser indicadas visualmente usando um tratamento que não seja apenas a cor para passar o significado. Usualmente, textos descritivos e/ou um ícone são utilizados.
Especificação | Status | Comentário |
---|---|---|
{{ SpecName('HTML WHATWG', '#selector-required', ':required') }} | {{ Spec2('HTML WHATWG') }} | Sem mudança. |
{{ SpecName('HTML5 W3C', '#selector-required', ':required') }} | {{ Spec2('HTML5 W3C') }} | Define a semântica de validação e de restrição HTML. |
{{ SpecName('CSS4 Selectors', '#opt-pseudos', ':required') }} | {{ Spec2('CSS4 Selectors') }} | Sem mudança. |
{{ SpecName('CSS3 Basic UI', '#pseudo-required-value', ':required') }} | {{ Spec2('CSS3 Basic UI') }} | Define a pseudo-classe, mas não a semântica associada. |
{{Compat("css.selectors.required")}}