1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
---
title: ':required'
slug: 'Web/CSS/:required'
translation_of: 'Web/CSS/:required'
---
<div>{{ CSSRef }}</div>
<p>A <a href="/en-US/docs/Web/CSS/Pseudo-classes">pseudo-classe</a> <a href="/en-US/docs/Web/CSS">CSS</a> <strong><code>:required</code></strong> representa qualquer {{HTMLElement("input")}}, {{HTMLElement("select")}}, ou {{HTMLElement("textarea")}} contendo o atributo {{ htmlattrxref("required", "input") }}.</p>
<pre class="brush: css no-line-numbers">/* Seleciona qualquer <input> requerido */
input:required {
border: 1px dashed red;
}</pre>
<p>Esta pseudo-classe é utilizada para destacar campos que devem ter dados válidos antes do formulário ser submetido.</p>
<div class="note">
<p><strong>Nota:</strong> A pseudo-classe {{cssxref(":optional")}} seleciona campos do formulário que são <em>opcionais</em>.</p>
</div>
<h2 id="Sintaxe">Sintaxe</h2>
{{csssyntax}}
<h2 id="Exemplos">Exemplos</h2>
<p>Veja {{cssxref(":invalid")}} como exemplo.</p>
<h2 id="Preocupações_com_acessibilidade">Preocupações com acessibilidade</h2>
<p>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 .</p>
<p>Se o formulário também possui campos <a href="/en-US/docs/Web/CSS/:optional">opcionais</a>, 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.</p>
<ul>
<li><a href="/en-US/docs/Web/Accessibility/Understanding_WCAG/Understandable#Guideline_3.3_%E2%80%94_Input_Assistance_Help_users_avoid_and_correct_mistakes">MDN Understanding WCAG, Guideline 3.3 explanations</a></li>
<li><a href="https://www.w3.org/TR/UNDERSTANDING-WCAG20/minimize-error-cues.html" rel="noopener">Understanding Success Criterion 3.3.2 | W3C Understanding WCAG 2.0</a></li>
</ul>
<h2 id="Especificações">Especificações</h2>
<table class="standard-table">
<thead>
<tr>
<th scope="col">Especificação</th>
<th scope="col">Status</th>
<th scope="col">Comentário</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ SpecName('HTML WHATWG', '#selector-required', ':required') }}</td>
<td>{{ Spec2('HTML WHATWG') }}</td>
<td>Sem mudança.</td>
</tr>
<tr>
<td>{{ SpecName('HTML5 W3C', '#selector-required', ':required') }}</td>
<td>{{ Spec2('HTML5 W3C') }}</td>
<td>Define a semântica de validação e de restrição HTML.</td>
</tr>
<tr>
<td>{{ SpecName('CSS4 Selectors', '#opt-pseudos', ':required') }}</td>
<td>{{ Spec2('CSS4 Selectors') }}</td>
<td>Sem mudança.</td>
</tr>
<tr>
<td>{{ SpecName('CSS3 Basic UI', '#pseudo-required-value', ':required') }}</td>
<td>{{ Spec2('CSS3 Basic UI') }}</td>
<td>Define a pseudo-classe, mas não a semântica associada.</td>
</tr>
</tbody>
</table>
<h2 id="Compatibilidade_de_navegadores">Compatibilidade de navegadores</h2>
<p>{{Compat("css.selectors.required")}}</p>
<h2 id="Veja_também">Veja também</h2>
<ul>
<li>Outras pseudo-classe relacionadas a validação: {{ cssxref(":optional") }}, {{ cssxref(":invalid") }}, {{ cssxref(":valid") }}</li>
<li><a href="/en-US/docs/Learn/HTML/Forms/Form_validation">Validação de dados de formulário</a></li>
</ul>
|