Instruções do formulário
O Silktide encontra campos de formulário que podem precisar de uma explicação, como campos de texto livre, e pede-lhe que decida se cada um precisa de instruções que descrevam o que introduzir. Os campos que precisam de instruções devem tê-las associadas no código, e não apenas colocadas nas proximidades.
Porque é que isto é importante
Muitas vezes, um rótulo por si só não é suficiente. "Data" não diz nada sobre o formato esperado, que varia consoante o país; "Referência" não indica qual dos seus três números de referência é pretendido. Os visitantes que adivinham incorretamente recebem um erro — ou pior, a submissão é aceite com dados incorretos.
Associar a instrução no código é tão importante como escrevê-la: uma sugestão que esteja apenas visualmente perto do campo é invisível para um utilizador de com o foco no campo de introdução.
Como corrigir
Para cada campo assinalado, decida se um visitante poderá não saber o que introduzir. Se sim:
- Adicione uma descrição e associe-a ao campo com o atributo
aria-describedby:
<!-- A sugestão é anunciada quando o campo recebe o foco -->
<label for="date">Data</label>
<input type="text" id="date" aria-describedby="date-hint">
<p id="date-hint">Formato: dia/mês/ano, por exemplo, 28/07/2026</p>
- Ou utilize um tipo de campo criado especificamente para esse fim.
<input type="date">disponibiliza aos visitantes um seletor de data no respetivo idioma, sem necessidade de explicação — prefira esta opção quando existir um tipo adequado.
Se o campo for autoexplicativo — uma caixa de "Pesquisa" ou um campo "Mensagem" num formulário de contacto — não é necessária qualquer instrução; a ocorrência.
Como o Silktide testa isto
- Encontra os controlos de formulário em que as instruções podem ser úteis: elementos
<textarea>e campos<input>do tipotext,email,file,number,passwordourange. Os botões, caixas de seleção, botões de opção e menus pendentes são ignorados, porque normalmente um rótulo é suficiente para estes. - Ignora campos que não são visíveis para utilizadores com visão e campos inseridos por widgets conhecidos de terceiros, como os formulários ocultos que os scripts de rastreio e tradução adicionam para uso próprio.
- Ignora campos que já têm uma descrição associada — um
aria-describedbyque aponta para texto real e não vazio, ou um atributoaria-descriptionnão vazio. - Assinala cada campo restante para sua revisão: uma pessoa decide se realmente precisa de instruções.
Resolução de problemas
O meu campo tem uma sugestão mesmo por baixo
A proximidade visual não é uma associação. A menos que a sugestão esteja ligada ao campo com aria-describedby (ou aria-description), a não a anuncia, e o Silktide assinala o campo. Adicionar o atributo resolve ambos os problemas.