Avançar para o conteúdo
SilktideAjuda

Cabeçalhos de células

O Silktide verifica as células de tabela que identificam os respetivos cabeçalhos usando o atributo headers e confirma que cada ID referenciado existe de facto. Uma referência a um ID inexistente interrompe silenciosamente a ligação entre uma célula e o respetivo cabeçalho.

Em tabelas complexas, cada célula de dados pode incluir um atributo headers com uma lista dos valores id das células de cabeçalho que se aplicam a ela. Se um ID estiver mal escrito, ou se o cabeçalho para o qual apontava tiver sido renomeado ou removido, a associação deixa de funcionar silenciosamente.

<!-- Problema: não existe nenhum elemento com id="prise" (erro de digitação de "price") -->
<td headers="prise">$40</td>

Porque isto é importante

Um usa as associações headers para anunciar os cabeçalhos corretos antes de cada valor. É assim que uma pessoa que não consegue ver a tabela acompanha o significado de cada número. Quando uma referência não aponta para nada, a célula é anunciada sem o respetivo contexto e o ouvinte não tem como saber que algo está em falta — a tabela simplesmente se torna mais difícil ou impossível de acompanhar.

As referências quebradas geralmente surgem com o tempo: o id de um cabeçalho é renomeado, uma coluna é eliminada ou um regenera os IDs. Como nada muda visualmente, sem uma verificação automatizada ninguém percebe.

Como corrigir

  1. Encontre o atributo headers da célula e compare cada ID listado com os atributos id das células de cabeçalho da tabela.
  2. Corrija os erros de digitação ou atualize a lista com o id atual do cabeçalho.
  3. Se um cabeçalho referenciado já não existir, remova o ID desatualizado da lista.
  4. Se a tabela for simples — com uma única linha ou coluna de cabeçalhos — considere eliminar completamente as associações headers e usar células <th> com atributos scope, que não podem falhar desta forma.
<!-- Corrigido: a referência corresponde a um cabeçalho real -->
<th id="price">Price</th>
...
<td headers="price">$40</td>

Como o Silktide testa isto

  1. Encontra todas as células de tabela com um atributo headers em cada página.
  2. Divide o valor do atributo em IDs individuais.
  3. Procura cada ID em qualquer parte da página.
  4. Comunica cada célula que referencia pelo menos um ID inexistente.

Resolução de problemas

O ID existe, mas a célula continua a ser comunicada

Verifique se existem problemas de correspondência exata: os IDs diferenciam maiúsculas de minúsculas, por isso Price e price são IDs diferentes. Confirme também que a lista está separada apenas por espaços — vírgulas ou outra pontuação passam a fazer parte do ID e interrompem a pesquisa.

Saiba mais

Última atualização

Esta página foi útil?

Cabeçalhos de células | Ajuda da Silktide