Logo do siteSilhueta da face do Maujor seguida do texto Maujor o dinossauro das CSS

Menu hamburger Três barras horizontais na cor laranja destinadas a ser clicada para abrir o menu menu do site

O polêmico elemento NAV da HTML5

Publicado em: 2012-12-16 — 15.371 visualizacoes

interface Facebook

Há três dias recebi um email do meu leitor Vagner Baggio com a seguinte pergunta:

Usar um form de busca dentro da tag nav é correto ou não aconselhável?


Para responder ao Vagner fiz o que sempre faço quando tenho uma dúvida (sim, eu constatei que tinha a mesma dúvida dele) em relação aos padrões web: consultar as especificações no site do W3C.
Lá encontrei o seguinte:

O elemento nav representa uma seção da página que linca para outras páginas ou para conteúdos dentro da mesma página.

Claríssimo certo? Elementos de formulário não são links, portanto não podem constar em elementos nav, certo?

Errado (ou não?), pois elementos de formulário, tal como uma caixa de busca lincam para outras páginas, isto é, a página com os resultados da busca.

Mas, poder-se-ia contra argumentar citando as especificações do W3C:

O elemento form representa uma coleção de elementos a ele associados, alguns deles podendo representar valores editáveis que podem ser enviados ao servidor para processamento.

E agora? Semanticamente a caixa de busca é um link ou um meio de enviar dados ao servidor para processamento?

Enfim, há vários argumentos e contra argumentos, inclusive com considerações sobre SEO, leitores de tela, acessibilidade, indexação etc. que levariam a discussão ao infinito.

A questão é polêmica e eu resolvi chamar meus leitores para discutir a respeito abrindo um post na minha página no Facebook. Era uma oportunidade de ouvir opiniões, aprender um pouco e compartilhar coletivamente conhecimentos.

Rapidamente várias opiniões, argumentos e links para matérias contra e a favor foram postadas. Fiquei empolgado com o engajamento do pessoal, e, pelo que pude constatar, realmente a especificação não é clara o suficiente para afirmar que está certo ou errado inserir uma caixa de busca dentro de um elemento nav.

Seria um argumento definitivo? constatar que:

Ian Hickson o “pai da HTML5” em seu site pessoal usa, exclusivamente, um formulário, dentro de um elemento nav, com elementos de formulário não só para navegar no site como também para mostrar/esconder conteúdos e ordenar posts.

Ou poder-se-ia perguntar?

Mostrar/esconder conteúdos e ordenar posts é considerado navegação e pode ser inserido em um elemento nav? E, clicar um link para fazer requisições dinâmicas?

E, não é só isso não, a especificação, para confundir mais ainda, prevê que o elemento nav deve ser usado somente para “bloco de navegação principal.”

O que é bloco de navegação principal em um layout ou aplicação mais complexa? Poderá haver mais de um conjunto de links a ser considerado navegação principal? Chamar uma janela modal de ajuda é navegação? é principal?

Parece-me que essa questão não se resolve consultando teorias e especificações e que não existe uma resposta definitiva para ela.

Ao longo da minha vida aprendi que as vezes a solução de um problema está dentro de nós mesmos. Em lugar de procurar na teoria confusa uma solução universal, usemos o bom senso para cada novo caso que surge.

E você? O que você tem a dizer a respeito?

Desabilitei comentários nessa matéria, mas gostaria muito de saber sua opinião, assim convido você a ir para meu post no FaceBook e comentar lá.

Desenvolvimento com Padrões Web? Adquira os livros do Maujor
Visite o site dos livros.

Esta matéria foi publicada em: 2012-12-16 (domingo). Subscreva o feed RSS 2.0 para comentários.
Comentários estão fechados, mas trackback é possível.

Comentários fechado.

topo