Como você passa na Seção 508 para uma caixa de pesquisa em HTML 5?
-
12-11-2019 - |
Pergunta
508 Normas, Seção 1194.22 (a) afirma que:
Um texto equivalente a cada elemento não de texto deve ser fornecido (por exemplo, via "alt", "longdesc" ou no conteúdo do elemento).
Para uma caixa de pesquisa, usando
<input type="text" alt="Search" value="" tabindex="1" name="s" id="s" />
passa nos padrões 508, mas não passa na validação do HTML 5.
Está usando <label>
tags são a única maneira de passar nos padrões 508 e na validação do HTML 5, porque gostaria de evitar erros desnecessários <label>
marcação?
Solução
Acho que você precisa chamar mais atenção para 1194.22 (n) nesta situação.Se você realmente precisa desesperadamente ficar sem um rótulo separado, você pode tentar algo assim:
<input type="search" value="" tabindex="1" name="s" id="s" />
<label for="s"><input type="submit" value="search"></label>
Mas eu recomendo fortemente pelo menos tentar isso em um leitor de tela (NVDA é grátis, MANDÍBULAS pode ser usado por 40 minutos em um 'teste gratuito') ou, melhor ainda, configurando uma página de teste e fazendo com que alguns usuários de leitores de tela experimentem.
Alternativamente você poderia investigar aria-labelledby
e veja se isso permite que você se encaixe no seu rótulo com mais naturalidade.