Pular para o conteúdo
Guia de execução · menu Design

Menus, abas e paginação: navegação que não perde o visitante

Menu mal resolvido perde o visitante em silêncio: ele deixa de achar o que procura e sai sem reclamar com ninguém. Esconder a navegação atrás do ícone de três linhas no desktop quase divide pela metade o uso do menu e deixa as tarefas pelo menos 39% mais lentas (Nielsen Norman Group, 2016). Cada decisão aqui vem com o número e o dono: quando o mega menu vence e o atraso de hover que 60% dos e-commerces medidos esquecem (Baymard, 2023), o papel ARIA certo para cada tipo de menu (W3C), os alvos de toque do WCAG 2.2, o critério de abas do Nielsen Norman Group e a escolha entre paginar, carregar mais e rolagem infinita, com o que o Google exige por baixo.

Ilustração em traço azul-marinho com destaques rosa e dourado de uma pessoa diante de uma grande interface flutuante, na qual um menu em destaque dispara setas e caminhos que levam a várias telas menores ao redor.
O menu é o mapa do site: cada rótulo abre um caminho, e o caminho que ninguém encontra deixa de existir.

A aula, em vídeo e em podcast

A aula percorre os mesmos seis pontos do guia, com os números na tela: navegação escondida, mega menu, alvos de toque, abas, listas longas e o critério de aceite do componente. O vídeo dá o panorama em oito minutos; o podcast aprofunda a conversa em quarenta, para ouvir no deslocamento. As duas peças foram geradas no NotebookLM a partir do dossiê de pesquisa e são servidas nos arquivos originais, sem recompressão.

Aula em vídeo: menus, abas e paginação, com os números e as fontes do guia.
Transcrição do vídeo

Olá, time de marketing web da Lead Lovers, que bom ter todo mundo aqui pra essa nossa aula prática. Olha só, a ideia hoje é ir direto ao ponto e derrubar alguns dos maiores mitos de UI e UX que andam por aí. E vão fazer isso usando dados concretos, direto na fonte, porque, vamos ser sinceros, a navegação de um site ou produto digital não pode ser baseada no famoso Eu Acho, né? Tem que ser comportamento medido. Então a gente vai ver exatamente como parar de perder visitantes naquele silêncio absoluto. Bora lá? Essa rota de hoje passa rapidinho por seis pontos-chave, navegação oculta, mega-menus, alvos de toque, o uso de abas e URLs, aquele debate clássico entre paginação e rolagem e pra fechar, um checklist bem prático.

Vamos começar falando da navegação oculta. Sabiam que o menu mal resolvido é, literalmente, o assassino silencioso das nossas taxas de conversão? A pessoa não acha o que quer e simplesmente vai embora, sem falar nada. E, nossa, os números assustam. Um estudo do Nielsen Norman Group, de 2016, mostrou que no desktop, as pessoas usam um menu escondido, tipo aquele famoso ícone de hambúrguer, em só 27% das vezes. Isso despenca se a gente comparar com os quase 50% de uso quando a navegação está ali, visível, logo de cara. E o estrago maior aparece na hora de resolver tarefas no dia a dia. Olha isso. Esconder a navegação no desktop deixa a conclusão de uma tarefa 39% mais lenta. É muita coisa. No celular o impacto é bem menor, bate lá nos 15%.

É por isso que o menu hambúrguer até passa na telinha do smartphone, mas no desktop, nossa, é um erro fundamental e caríssimo. A regra aqui é super clara. O que a pessoa usa muito tem que morar na superfície. Isso tudo puxa um conceito fantástico também do Nielsen Norman Group, que é o aroma de informação. Basicamente a capacidade de um link dizer exatamente o que tem do outro lado antes mesmo de acontecer o clique. Pensa comigo, trocar um botão genérico de Saiba Mais para um bem direto tipo ver planos e preços é a melhoria mais barata e com maior retorno financeiro que a nossa equipe pode aplicar na arquitetura de informação. Beleza, avançando para o nosso segundo ponto, os mega menus e a acessibilidade.

Os mega menus dominam quase 90% dos grandes e-commerce hoje, mas olhe o problema. O Baymard Institute descobriu em 2023 que impressionantes 60% dos sites implementam muito mal aquele drop down que abre só de passar o mouse por cima, o famoso hover. E isso cria uma experiência super frustrante e caótica para quem navega. A gente chama esse problema de flickering, que é basicamente a cintilação do menu. É quando o painel abre e fecha que nem louco porque o mouse cruzou a área do gatilho por, sei lá, um milisegundo de bobeira. Imagina a raiva da pessoa tentando mover o mouse rapidinho na diagonal para clicar numa subcategoria específica e puff, o menu fecha de repente. A melhor parte, resolver isso e evitar essa desistência custa literalmente uma única linha de código.

É só colocar um atraso minúsculo, coisa de 300 a 500 milisegundos, antes do menu abrir e antes de fechar. Só esse pequeno respiro já mata a imensa maioria desses disparos acidentais pelo mouse. É genial de tão simples. E aproveitando o que estamos falando dos bastidores técnicos do menu, a gente precisa derrubar um mito de acessibilidade que custa muito caro. Às vezes, geradores de código por inteligência artificial leem a palavra menu e jogam a tag aria role menu na navegação. Só que essa tag é exclusiva para menus que imitam o aplicativo do sistema operacional, tipo editar ou deletar. E isso exige um controle super complexo pelo teclado. A navegação principal do site, essa tem que usar sempre a tag HTML clássica como a lista simples de links, sem invenção.

Indo para o nosso terceiro tópico, alvos de toque na prática. Uma interface elegante não adianta nada, se não der para clicar direito e sem ambiguidade, né? Pelas regras legais do W3C no WCAG 2.2, o tamanho mínimo absoluto de um alvo de toque é de 24x24 pixels. Mas se a gente pensar no conforto de verdade, as recomendações sobem bastante. A Apple pede 44x44 pontos no iOS e o Google vai para 48x48 no Android. A gente sempre tem que desenhar a interface pensando no conforto de quem está tentando clicar com uma mão só na tela do celular. A aba são ótimas, mas elas servem estritamente para alternar visões paralelas de uma mesma coisa. O Nielsen Norman Group alerta uma regra de ouro. Se a pessoa precisa ficar comparando os dados que estão em painéis diferentes, as abas vão fritar memória de curto prazo dela e dificultar muita interação.

Na dúvida, se a comparação for essencial para a conversão, uma página única continua vencendo as abas. E tem um detalhe técnico da documentação do Next.js que é sensacional. Onde a gente deve guardar informação de qual aba está aberta? Na URL, a aba ativa é um estado da página. Quando a gente faz isso, os ganhos são enormes, o link pode ser salvo nos favoritos ou compartilhado com alguém. O servidor já carrega a página exatamente no estado certo e, claro, as nossas ferramentas de analíticos conseguem monitorar o comportamento de um jeito super limpo e preciso. Chegamos no módulo 5. Paginação versus rolagem infinita. Depois de analisar mais de 5.500 horas de testes práticos, o Baymard Institute cravou o grande vencedor para a lista de produtos.

E a coroa vai para o botão carregar mais, junto com aquele carregamento sob demanda o famoso Lazy Loading. O Nielsen Norman Group avisa que aquela rolagem infinita clássica só funciona bem para feeds sociais. No eCommerce, ela quebra acessibilidade, torna o rodapé inalcançável e é um desastre absoluto para o SEO. E por falar em SEO, o Google Search Central mudou as regras e foi super direto. Eles não usam mais aquelas tags antigas de anterior e próximo. O buscador agora exige links de âncora de verdade e uma URL única para cada página. Por que isso é vital? Porque os robôs tradicionais de busca e os novos agentes de inteligência artificial de 2026, como o Claude, não clicam em botões e não rolam a tela.

Ou seja, sem URL únicas, o nosso catálogo de produtos fica praticamente invisível na internet. Sabe o que é muito irritante também? 13% dos eCommerce cometem o erro bizarro de não devolver a pessoa para a mesma posição na lista quando ela clica no botão de voltar. A pessoa entra no produto, clica em voltar para continuar olhando a vitrine e vai parar lá no topo de novo. Resultado? Ela desiste. É obrigatório a gente usar a History API do navegador para restaurar a posição exata da rolagem. E tem um ponto crucial para entender de vez. Não dá mais para tratar a acessibilidade na web como opcional. Virou lei. E com prazos muito apertados. A Europa entrou com o European Accessibility Act em junho de 2025.

Aqui no Brasil, a Justiça Federal já está cobrando a prática da lei brasileira de inclusão a 13.146 para meados de 2026. A ótima notícia é que a tecnologia está do nosso lado. Ferramentas modernas como o TanStack Table v9 estão aí para renderizar listas gigantescas consumindo pouquíssima memória e de forma totalmente acessível. E para finalizar, o nosso módulo 6, o checklist de saída. Resumindo tudo isso em ações claras, baseadas em testes reais de usuários, aqui estão as ordens de marcha para a gente aplicar nos produtos da Lead Lovers hoje mesmo. 1. Leia os rótulos de menu de forma isolada. Cada palavra tem que fazer sentido sozinha. 2. Coloquem aquele atraso de 300 a 500 milissegundos nos menus flutuantes.

3. Nada de alvo de toque menor que 24 pixels. É o mínimo. 4. Estado de aba e filtro sempre na URL. E 5. Usem o botão carregar mais com URLs únicas, em vez de rolagem infinita. Para encerrar nossa aula, eu quero deixar uma provocação final para a equipe refletir. A nossa navegação digital está realmente pegando as pessoas pela mão e guiando para a conversão? Ou será que, sem a gente perceber, a nossa estrutura está silenciosamente virando as costas para elas? O nosso foco absoluto tem que ser garantir que cada pixel de design retenha quem chega. Vale uma olhada crítica nas nossas plataformas hoje mesmo. Muito obrigado pela companhia pessoal e mãos à obra.

Transcrição por reconhecimento de fala sobre o áudio original. Nomes de fontes, termos técnicos e números foram conferidos contra o guia acima; pequenos desvios de grafia podem permanecer no restante da fala. Vale para as duas peças.

Podcast da aula: menus, abas e paginação
Portal Leadlovers 2026 · menu Design
Podcast da aula: a conversa aprofundada sobre as mesmas decisões.
Transcrição do podcast

Sabe quando a gente entra em um supermercado enorme? Daqueles com os corredores perfeitamente alinhados, a iluminação impecável, o piso brilhando... Sei bem, tudo lindo! Exato, tudo lindo! Mas, por algum motivo estético bizarro, a gerência resolveu arrancar absolutamente todas as placas de sinalização. Nossa, um pesadelo! Pois é. As prateleiras estão cheias, os produtos são ótimos, mas ninguém consegue achar o bendito molho de tomate sem ter que abrir portas secretas e olhar dentro de gavetas que não tem nome nenhum. A loja fica linda nas fotos do Instagram, né? Com certeza, mas na prática é um desastre. Exatamente, quem entra para comprar acaba se frustrando e vai embora de mãos vazias e o pior, em absoluto silêncio.

Olha, essa é uma imagem perfeita para descrever o que acontece na web todos os dias, viu? Né, a gente vê muito isso. A busca desenfreada por uma estética minimalista, tipo por tentar deixar a tela o mais limpa possível, acaba criando um labirento invisível para quem está tentando realizar uma tarefa simples. E o foco da nossa análise de hoje é explorar exatamente esse fenômeno. Bom, hoje é terça-feira, 18 de agosto de 2026, e nosso mergulho profundo é dedicado especialmente para a equipe de marketing e web da Lead Lovers. Um material excelente, diga-se de passagem. Demais, vamos dessecar o dossiê técnico fresquinho de hoje, mesmo, 18 de agosto de 2026, baseado nos capítulos de navegação do curso Frontends com Vibecoding do Alexandre Caramaschi.

Ah, o trabalho do Alexandre é sempre muito bem fundamentado. Sim, super detalhado. A nossa missão nesta conversa é desvendar como menus mal resolvidos, abas confusas e aquele abismo da rolagem infinita fazem os visitantes abandonarem os sites sem dar sequer um pio de feedback. E a premissa central de toda essa pesquisa que precisa ficar clara é que a navegação não é apenas sobre o visual, não é só sobre deixar a página bonita, sabe? Sim, vai muito além do layout. Trata-se fundamentalmente de não criar obstáculos cognitivos e técnicos invisíveis. Garantir que o básico seja excepcionalmente bem feito deixou de ser apenas uma boa prática de design. Virou sobrevivência, né? Exato. Se tornou uma imensa vantagem competitiva.

Quando a fundação técnica e visual é sólida, a pessoa navega com confiança e a conversão acontece. Certo, vamos desimpacotar isso começando pelo topo da página. Porque, logicamente, se a pessoa não acha o que quer, logo de cara o desastre já está armado. Com certeza, é a porta de entrada. E aquela analogia do supermercado sem placa se aplica perfeitamente àquela obsessão pelo famoso ícone de hambúrguer, né? Aqueles três tracinhos no computador de mesa. Ah, o menu hambúrguer no desktop. Um clássico dos hermos. Eu sempre fico com a sensação de que, no desktop, ninguém tem paciência para ficar caçando o menu escondido. Tem dados para validar essa sensação? Tem. E são dados fortíssimos sobre isso.

Bom, tem o estudo do Nielsen Norman Group de 2016. 2016 e ainda é referência? Sim, porque mapeou o comportamento humano que não muda. Eles testaram seis sites diferentes com 179 pessoas. E o estudo revelou que, no desktop, as pessoas usaram o menu escondido atrás do ícone de hambúrguer em apenas 27% dos casos. Nossa, só 27%? É muito baixo. É uma queda livre. Isso despenca em comparação com os 48% de uso quando a navegação era totalmente visível e fica ainda mais distante do 50% quando a navegação era combinada. Combinado ao que você diz, é tipo, exibir os links principais e agrupar só o que sobra. Isso, exatamente. Mas, pera aí. Se os números são tão ruins assim, por que o mercado adotou esse padrão de forma tão agressiva por tanto tempo?

O que é fascinante aqui é a diferença brutal de comportamento entre quem usa o celular e quem usa o desktop. Ah, os contextos mudam tudo. Totalmente. O mesmo estudo do Nielsen Norman Group, de 2016, aponta que a descoberta de conteúdo caiu mais de 20% quando a navegação ficou escondida no desktop. 20% menos descoberta é muito dinheiro deixado na mesa para um e-commerce. Muito dinheiro. E o pior, a execução das tarefas ficou, incrivelmente, 39% mais lenta. A pessoa demora muito mais para achar o que quer no computador. Mas e no celular? Daí no celular a história é outra. O dano é menor. As tarefas ficaram apenas 15% mais lentas. Ah, entendi. 15% contra 39%. Exato. E é exatamente por essa métrica que o menu hamburger é considerado tolerável.

Até necessário, em telas pequenas por falta de espaço físico. Mas usá-lo em monitores grandes é um erro grave de usabilidade. É a velha regra do design de interfaces. A ação de alta frequência precisa morar na superfície. Não faz ninguém cavar para achar o óbvio. Perfeito. Ninguém quer escavar um site. E o material base traz um conceito brilhante e também documentado pelo Nielsen Norman Group que eu achei o máximo chamado aroma de informação. Nossa, esse conceito é maravilhoso, né? É muito didático. Explica para a gente como funciona. A ideia é que o rótulo do link deve exalar o cheiro do que tem do outro lado. Antes mesmo de ocorrer o clique. Como assim um cheiro digital? E tem uma padaria, certo?

Web é trocar um botão genérico escrito Saiba Mais por algo com forte aroma de informação. Tipo ver planos e preços. Ah, faz todo sentido. É uma mudança minúscula no texto. Minúscula, mas que traz o maior retorno sobre investimento possível. Porque diminui a ansiedade de quem vai clicar. A pessoa sabe o que vai encontrar. Entendi. Mas aí a gente entra no território dos e-commerce gigantes, né? Onde simplesmente não dá pra colocar todos os planos, roupas e preços na barra principal. O cenário muda de figura e exige o famoso Mega Menu. O temido Mega Menu. Sim. Só que parece que o mercado é ramão feio nisso também. A pesquisa cita o Baymard Institute apontando que 88% dos maiores e-commerce dos Estados Unidos usam o Mega Menu ativado por Rover.

Isso, aquele que abre só de passar o mouse por cima sem precisar clicar. Exato. Isso não deveria facilitar. Deveria, mas é exatamente nesse padrão dominante de 88% listado pelo Baymard Institute, que mora um dos defeitos mais estressantes da internet moderna. O que eles descobriram? Bom, em 2023 o Bay Mart mediu que espantosos 60% dos sites implementam esse menossuspenso de forma errada. 60%? É mais da metade, errando o básico. Pois é. Eles cometem o erro do flickering. Sabe quando a pessoa move o cursor rapidamente pela tela em direção a outro lugar? O cursor cruza a barra de navegação e o menu gigantesco abre e fecha freneticamente como piscar piscar. Nossa, isso me dá uma agonia. Isso é o flickering, então.

Isso. E pior ainda é o problema da diagonal, quando o menu fecha na cara de quem está tentando acessar o sublink. Essa frustração da diagonal é um clássico absoluto. A pessoa abre a categoria roupas, o mega menu desce, e ela quer clicar em camisetas que está lá embaixo à direita. Exato. O movimento natural do pulso humano é mover o mouse na diagonal para chegá-la rápido. Sim, só que ao fazer isso, o cursor sai do elemento principal por um milissegundo e, pulfe, o menu inteiro desaparece e a pessoa tem que recomeçar do zero. É desesperador. É o tipo de atrito técnico invisível que mencionamos no começo. E a solução mecânica para esse defeito, medida em 2023 pelo Baymard, é quase assustadoramente simples de programar.

Jura? O que precisa fazer? A pesquisa técnica do Alexandre mostra que basta o desenvolvedor adicionar um atraso. Um delay via JavaScript de 300 a 500 milissegundos antes de abrir e principalmente antes de fechar o menu. Sério? Um simples cronômetro invisível de meio segundo resolve o problema da diagonal? Exato. Essa pequena janela de tempo de 300 a 500 milissegundos entende a imperfeição do movimento humano. Faz o código ser menos ansioso. Isso. O código basicamente pensa, será que a pessoa realmente quis sair do menu ou o mouse só escorregou pela tela? Isso elimina a imensa maioria dos disparos acidentais e salva a navegação diagonal. E ignorar esses detalhes cria um cenário generalizado de abandono de carrinho e rejeição, né?

Sem dúvida. Tem um benchmark do Baymard Institute de 2025 que contou com uma mostragem gigante de mais de 16 mil avaliações e ele mostra um quadro desolador para a indústria. Os números são chocantes mesmo. 58% dos sites desktop e 67% dos sites mobile tem a navegação de página inicial e categorias classificada puramente como medíocre ou ruim. Esses números de 58% no desktop e 67% no mobile vindos do benchmark de 2025 reforçam brutalmente aquilo que a equipe da Lead Lovers precisa ter em mente. Que é fazer o básico. Fazer o básico bem feito já coloca o produto à frente da maiorisma agadora da concorrência, sabe? Porque o padrão médio do mercado é construir interfaces que brigam com quem tenta usá-las.

Nossa, interfaces que brigam com o usuário é uma definição perfeita. E aqui é onde fica realmente interessante na minha opinião. Vamos lá. Porque já que sabemos como esse menu deve se comportar visualmente e como perdoar o movimento do mouse, temos que olhar para as entranhas do negócio. Por código fonte. Isso para como ele é construído no código. E a ironia suprema que o material relata é que ferramentas de inteligência artificial estão gerando códigos péssimos simplesmente por não entenderem a semântica humana da palavra menu. Há o problema do área e ser crítico. O material do curso relata um erro fatal de acessibilidade documentado pelo W3C. Eles dizem que usar o papel área definido como role igual a menu na navegação do site é um erro.

Mas peraí, por que usar a palavra menu para criar um menu quebra o site? Fiquei chocada. Isso desafia lógica. Parece totalmente contraintuitivo, né? Mas é uma falha semântica profunda. O padrão oficial do consórcio W3C declara explicitamente que a navegação de links de o site comum não deve usar esse atributo. Mas e como tem que ser, então? Uma navegação típica exige apenas a tag HTML básica, a tag nav, contendo uma lista de links e ponto final. Simples assim. Widgets de ação. Widgets de ação, tipo o quê? Pense em aplicativos de computador mesmo. Naqueles menus do sistema operacional que agrupam ações como editar, duplicar ou excluir um arquivo. Aquilo é o menu de verdade para o código. E o que acontece na prática se o programador inexperiente colocar esse role igual a menu no topo de um site normal?

Acontece um desastre absoluto e enxerga a tela. Ai caramba. Quando o código declara role igual a menu, as tecnologias assistivas como os leitores de tela usados por pessoas cegas esperam um comportamento complexo de teclado. Eles mudam o modo de navegação? Exato. O sistema operacional espera que as setas direcionais alternem entre os links, que as teclas home e end pulem para o início e para o fim da barra e que a tecla esque fecha a janela devolvendo o foco para o elemento anterior. O elemento de botões. Isso. Aí, se o desmovedor coloca essa etiqueta numa barra de links simples no site comum, que independe do teclado, fica completamente preso. A pessoa tenta navegar normalmente usando a tecla Tab, como faz no resto da web inteira, e o site simplesmente não responde.

Fica travado ali. Fica travado. E o irônico é que os agentes de inteligência artificial de geração de código caem nessa armadilha tempo todo hoje em dia. Tem a palavra menu no prompt humano. Exatamente. O modelo leu prompt do desenvolvedor pedindo para gerar um menu. E sem entender a diferença entre um cardápio de links simples e uma barra de ferramentas complexa, aplica o atributo destrutivo de forma automática. Ou seja, automação está espalhando armadilhas de acessibilidade em massa pela internet. É um lembrete brutal de que o código precisa ter intenção. Tem que ter supervisão técnica. A geração não se limita ao mouse ou ao teclado do computador. A forma como o nosso dedo toca no vidro do celular na rua obedece a uma matemática implacável, né?

Sem dúvida. A precisão dos tamanhos de clica é vital no mobile. Principalmente para evitar aquela frustração de tentar comprar algo segurando o celular com uma mão só num ônibus balançando. E acabar clicando no link errado porque os botões são minúsculos e péssimo. Exato. Tem regras oficiais para isso, não tem? Sim. E são bem rígidas. O W3C, na norma de acessibilidade WCAG 2.2, exige rigorosamente no critério 2.5.8 para atingir o nível de conformidade duplo A, um alvo de toque que tenha pelo menos 24 x 24 pixels em CSS. 24 x 24 pixels para o nível duplo A. Isso. E se a meta da equipe for a excelência máxima do nível triple A, no critério 2.5.5 sobe a exigência para alvos de pelo menos 44 x 44 pixels.

Nossa, de 24 x 44 é uma diferença gigante na tela. E isso é a regra de acessibilidade da web. Mas as gigantes que fabricam os celulares também têm as próprias exigências de design, certo? Sim. E elas são ligeiramente diferentes das normas web. O que elas dizem? Bom, o Google na documentação do sistema Android tem a pelo menos 48 x 48 dp. Que são os pixels independentes de densidade. 48 x Android. E a Apple? Já a Apple listem suas diretrizes 44 x 44 pontos como o tamanho padrão de clique no iOS. E eles permitem um mínimo distrito de 28 x 28 pontos para situações de exceção. É bastante especificidade. Tem alguma regra sobre a quantidade de botões? Tem a questão da carga visual. O guia material design 3 do Google sugere que uma barra de navegação inferior beva ter apenas de 3 a 5 destinos de igual importância para não sobrecarregar a tela.

3 a 5 no Android. Isso. A Apple já prefere não fixar um limite numérico rígido. Orientando os designers apenas a ousar, abrir aspas, o número apropriado fechar aspas. Ah, a Apple sempre com essas definições mais abertas para o design resolver, né? Pois é. Quando do topo da página e da barra inferior do celular, a gente chega no meio do conteúdo, onde o desafio de interface muda completamente. É o miolo da página. Isso. A gente precisa organizar grandes blocos de informação em pouco espaço. E a primeira ideia de quase todo mundo na equipe de web são as famosas abas. As abas parecem resolver tudo visualmente. Visualmente, elas limpam a tela maravilhosamente. Mas as anotações do dossier são uma metáfora excelente para um problema oculto aí.

Qual metáfora? Diz assim. Usar abas que não mudam a URL da página lá em cima na barra do navegador é como tentar ler um livro de mil páginas, onde o autor proibiu o uso de um marcador de página. Genial. Se você precisar fechar o livro para ir ao banheiro, quando abrir de novo, não vai ter ideia de onde parou. Essa metáfora com a visão geral do que a internet faz todo sentido, sabe? A grande regra de ouro apontada no estudo do News in Norman Group determina que abas devem servir única e exclusivamente para visões paralelas do mesmo contexto. Coisas que não precisam ser processadas ao mesmo tempo pelo cérebro. Exatamente isso. O grande alerta do News in Norman Group é o peso na nossa memória. Se a arquitetura da página exige que a pessoa compare informações entre diferentes abas. Tipo comparar um plano básico em um plano premium. Isso.

Imagina comparar as especificações técnicas da aba A com a aba B clicando entre elas. A carga na memória de curto prazo fica altíssima. A pessoa clica, tenta decorar o número, volta para outra aba, esquece o número, clica de novo. Vira um teste de memória na uma compra. Nesses casos de comparação, jogar toda a informação na página única e comprida e deixar a pessoa rolar de cima abaixo é imensamente superior. Porque o olho humano varre a informação na tela sem exigir memorização nenhuma. E como sempre, a implementação técnica não é brincadeira. O consórcio da Web também regula como essas abas devem funcionar nos bastidores. A regula sim. O guio oficial de práticas do W3C, chamado de APG, determina regras rígidas. Por exemplo, o foco de teclado entre as abas não deve usar a tecla tab, mas sim as setas direcionais.

Interessante. E sobre trocar de aba só passando mal, Z. Tem a questão da mudança automática, sim. Sabe quando a pessoa apenas posiciona o foco sobre o título da aba e o painel de baixo já traca o conteúdo sozinho? Sim. Agiliza as vezes. Então, essa ativação automática só é permitida pelas regras se não houver nenhuma latência perceptível. O que, na prática de engenharia, significa que o conteúdo já tem que estar 100% pré-carregado no código. E se tiver que buscar informação no servidor na hora do clique? Aí a regra muda. Se a aba precisar ir buscar novos dados na rede de internet e houver demora, a regra proíbe a troca automática. A pessoa tem que confirmar a intenção apertando ativamente a tecla inter ou espaço. Vai sentido pra não gerar aquele travamento chato.

Além disso, o leitor de tela precisa de atributos específicos avisando qual a aba tá visível. Apenas mudar a cor da aba ativa com CSS, que é o que muita gente faz, é o mesmo que não fazer absolutamente nada pra quem não enxerga cores ou não enxerga a tela. E voltando à história do marcador de livro que me marcou muito, que é a maior armadilha das abas. O estado da página. Ah, a URL. Sim, o material de referência detalha que a documentação da infraestrutura Next.js decreta que o estado atual da aba, ou seja, qual aba está aberta, deve obrigatoriamente ir pra URL. E eles listam motivos bem fortes pra isso. Inegociáveis, eu diria, o Next.js lista ganhos de grandes. Primeiro, o princípio básico da web. O link fica compartilhável e a pessoa pode salvar exatamente aquela visão nos favoritos.

Compartilhar o link e abrir na aba certa ao mínimo, esperado, né? Segundo, a renderização no servidor permite que o sistema já devolva a página com HTML correto montado pra aquela aba específica, sem piscatela. Muito mais rápido. E terceiro, a equipe de marketing consegue ver no Google Analytics qual aba é mais acessada simplesmente olhando o endereço das páginas mais visitadas. Sem precisar escrever uma linha de código de rastreamento extra. É genial. E o relatório até cita, uma ferramenta específica pra isso, né? Cita sim. A ferramenta queridinha no ecossistema React, pra resolver isso de forma elegante, é biblioteca NUQS, que sincroniza o estado diretamente na barra de endereço. Tá documentado no material base na sua versão 2.9.6 com a data de 17 de agosto de 2026.

Olha, tirar responsabilidade de gerenciar o estado da aplicação e jogar isso de volta pra URL é recuperar a essência do que faz a internet funcionar de verdade. Uma URL imprecisa quebra confiança na plataforma. Concordo plenamente. E por falar em quebrar a experiência, se nas abas o problema é esconder a informação e forçar a memória de curto prazo, o outro extremo consegue ser tão ruim quanto. Jogar tudo na tela. Jogar absolutamente todo o banco de dados de uma vez só na tela da pessoa. Estamos falando das longas listas de itens. O famoso combate entre a paginação tradicional com os numeros embaixo, o botão de carregar mais e a popular Rolagem Infinita. É uma briga antiga no design. A Rolagem Infinita sempre me passa a sensação de estar numa esteira de academia com o botão de desligar.

A pessoa começa a caminhar querendo chegar na saída da sala que seria o Roda Pé com os dados de contato, do site, links importantes mas a esteira continua adicionando o chão novo na frente dela eternamente. É o pesadelo do Roda Pé inalcançável e isso levanta uma questão importante sobre a ilusão de engajamento confrontando a usabilidade real. Mas nós já temos o veredito final sobre isso. Ah é? Quem decidiu a briga? O Baymard Institute que realiza aqueles testes de comportamento de compra massivos. A atualização da pesquisa deles publicada no ano de 2024 acumulou nada menos que mais de 5.550 horas de teste em usabilidade. Mais de 5.000 horas observando pessoas comprarem na internet? Exato. E o resultado conclusivo dessas mais de 5.550 horas agora em 2024 é que o botão explícito de carregar mais combinado com o carregamento preguiçoso de imagens na tela é amplamente superior.

Superior aos dois, a paginação e a rolagem infinita. Aos dois, superior tanto a paginação antiga de páginas numeradas quanto a temida a rolagem infinita pelo menos para o cenário de cómerces. O botão dá o controle de volta para quem navega. A pessoa decide se quer ver mais produtos. E qual o volume ideal para despejar na tela de cada vez quando clica no botão? Porque não adianta o botão de carregar mais trazer só dez produtos de cada vez e fazer a pessoa clicar cem vezes. Com certeza não. Os testes de estresse do Baymard, medidos em 2020, definiram as métricas exatas baseadas no cansaço cognitivo. Quais são os números mágicos? No desktop, eles apontam que o correto é carregar um lote inicial de 100 a 150 itens.

Mas atenção, apenas se for um produto puramente visual, como roupas ou móveis. 100 a 150 roupas de uma vez? Isso. Porque o cérebro humano processa padrões de imagem muito rápido. Então a lista pode ser longa sem cansar. Entendi. E se for algo mais técnico? Agora, se for um produto que exige comparar especificações e leitura de texto detalhado, tipo peças de hardware de computador, a carga cognitiva é exaustiva. Então o lote deve cair para 50 a 100 itens. E no celular? Não cabe 100 geladeiras na tela do celular. No celular com uma tela minúscula? Os números de 2020 do Baymard recomendam carregar apenas de 15 a 30 itens por vez. Faz muito sentido. E o grande alerta deles é que 52% dos sites no mercado erram feio essas quantidades.

Mais da metade. E a rolagem infinita automática. Não serve para absolutamente nada mesmo. Serve, mas num nicho muito específico. Tem um artigo publicado em 2022 pelo Nielsen Norman Group que delimita isso perfeitamente. A rolagem infinita só deve ser usada em fluxos de informação homogênios, onde a pessoa não tem uma tarefa específica em mente. Tipo, ficar passando vídeo de dancinha. O exemplo clássico. Rolar o feed de fotos de uma rede social para passar o tempo. Mas em qualquer cenário de comércio ou produtividade, a aplicação da rolagem infinita gera três grandes estragos listados nesse estudo do Nielsen Norman Group de 2022. Quais são os três estragos? Primeiro, o roda-pé do site fique inalcançável, como você mesma disse na analogia da esteira.

Segundo, a otimização para motores de busca, o famoso SEO, é gravemente prejudicado. E terceiro, como já comentamos exalcivamente, a acessibilidade por teclado é destruída. A pessoa não consegue passar do meio da página. Fica presa num loop eterno. Mas, independentemente do padrão escolhido, o material do curso levanta um erro estrutural medido pelo Baymard em 2020 que, pessoalmente, é o que mais me irrita na internet disparado. Imagino qual seja. Treze por cento dos e-commerce não tem a capacidade de devolver o visitante a exata posição da rolagem anterior quando ele aperta o botão de voltar do navegador. Pra sair da página do produto e retornar a lista de onde veio, sabe? Imagine o cenário.

A pessoa passa dez minutos descendo uma lista enorme de sapatos, olha um item lá no fundo e decide voltar pra vitrine i. A loja virtual a joga de volta pro topo da página 1. É frustrante demais. Um elemento exato em que eu simplesmente fecho a aba e vou comprar no concorrente dá muita raiva. Como a engenharia de software resolve isso de forma elegante hoje em dia? Bom, pra não fazer parte desse grupo problemático de treze por cento medido em 2020, o desenvolvedor precisa trabalhar junto com o navegador usando a History API e, mais especificamente, dominar um recurso vital chamado Scroll Restoration. Restoration de restaurar a rolagem. Isso! Em aplicações complexas, o código precisa sinalizar pro navegador pra ele aguardar silenciosamente enquanto o banco de dados repovou as dezenas de itens que estavam visíveis na tela.

Ele pede um pêncamo pro navegador. Exato! E só então autorizo o navegador a restaurar a posição do scroll lá no meio da página, piscando a tela já no lugar certo. É engenharia de ponto operando nos bastidores a favor da paciência humana. Certo! Agora vamos conectar tudo isso com um ponto cego monumental no mercado. Qual? Porque, se nós humanos já odiamos perder a posição da rolagem ou procurar menuis que piscam, como é que os robôs dos grandes buscadores as inteligências artificiais emergentes e os leitores de tela lidam com essas interfaces hipercomplexas? Porque, claramente, a gente não tá mais programando apenas pra olhos físicos, né? A internet é lida por máquinas primeiro. Veja o peso disso no SEO, por exemplo.

A documentação vigente e atualizada do Google Search Central aposentou e removeu totalmente o peso histórico das velhas tags HTML chamadas rel igual a next e rel igual a prev. Aquelas tags antigas que diziam próxima e anterior pro Google. Elas mesmas. Não serve mais pra interligar a paginação pros robôs. Hoje, os engenheiros de busca do Google exigem que o site utilize links de âncora reais com a tag clássica A do HTML acompanhados de uma URL limpa e única por página e tags canônicas individuais. Então, o que tudo isso significa na prática? A grande lição mecânica aqui é que os rastreadores do Google, os robôzinhos que indexam internet, não têm mãos. Perfeito. Eles não clicam em botões físicos de interface do seu site Turbinador de JavaScript e não sabem rolar a bolinha do mouse num feed infinito.

Ele só lê em texto puro. Exato. Qualquer conteúdo rico do seu site que exige o acionamento de um evento de rolagem, ou seja que exige interação física humana pra existir na árvore estrutural da página, é literalmente invisível pro maior motor de busca do planeta. E essa lógica da visão mecânica não se resume só o Google clássico de buscador, não é. O material da pesquisa técnica aponta um movimento fortíssimo que começou a ser desenhado já há algum tempo com a explosão das plataformas de IA. Exatamente. Há um dado assombroso sobre isso, revelado pela infraestrutura da Cloudflare no relatório deles de junho de 2025. O que a Cloudflare detectou? Naquele mês específico de junho de 2025, a plataforma de inteligência artificial Claude executou cerca de 71 mil requisições de página por visita referida.

71 mil requisições de um único acesso. Isso demonstra, estatisticamente, que os agentes autônomos de IA já operavam agressivamente navegando na web como se fossem grandes scrollers e a regra é a mesma dos robôs do Google. Se tiver escondido, eles não veem. Se a informação crucial sobre o plano de assinatura da empresa tá escondida atrás de um componente de interface interativo que requer um clique no JavaScript pra gerar o código HTML na tela, a inteligência artificial simplesmente passará direto e não terá esses dados pra recomendar o serviço aos usuários dela. Ou seja, conteúdo não renderizado é conteúdo morto. E ainda assim, se o desenvolvedor optar por injetar centenas ou milhares de itens de uma só vez pra garantir que tudo seja indexável por todos os robôs do mundo, a performance na máquina do humano pode derreter.

O navegador trava. É aqui que entra aquela história de virtualizar a lista. Sim, mas é um cobertor curto, viu? Por que um cobertor curto? Virtualização é uma técnica comum onde o desenvolvedor faz o código renderizar de fato apenas as 20 linhas da tabela que estão visíveis no monitor da pessoa naquele momento. E ele descarta todo o resto da memória pra não estourar o computador do usuário. Parece inteligente qual é o problema. O problema é como as tecnologias de acessibilidade leem isso. O padrão catalogado pelo W3C pra lidar com feeds dinâmicos, que o especialista Adrian Roselli exaustivamente desde 2014 exige garantias bem difíceis. Garantias de teclado? Sim, atalhos como page up, page down, control mais home e control mais end, pra que um deficiente visual consiga saltar a área do feed contínuo e chegar à próxima sessão da página.

A própria documentação técnica avançada da famosa biblioteca corporativa AG Grid admite que essa virtualização violenta quebra totalmente a integridade de leitura pra quem não enxerga a tela. Porque o conteúdo que tá fora da tela literalmente não existe mais no código, né? Fica mudando o fundo, sem avisar. Exatamente. A recomendação conservadora do próprio AG Grid voltar pra boa e velha paginação com links estáticos. Nossa, mas felizmente o arsenal técnico evolui. Pra tentar resolver esse peso insano de renderizar dados massivos com mais inteligência sem ter que quebrar a estrutura da página pros leitores de tela, o material base levanta tecnologias atualizadíssimas. Sim, o ecossistema tá correndo atrás do prejuízo.

Por exemplo, a biblioteca TanStack Table na versão 9 que alcançou estabilidade agora no dia 4 de agosto de 2026. Um lançamento bem recente. Super recente. Essa versão final lançada especificamente nessa data de 4 de agosto de 2026 promete uma arquitetura incrivelmente eficiente. Ela é capaz de reduzir 86% a retenção de memória de sistema para processamentos massivos na casa de um milhão de linhas comparada à geração anterior. 86% é um ganho de performance absurdo. O framework consegue fazer o trabalho pesado sem sobrecarregar a memória e ele age em conjunto com propriedade CSS de ponta como poderoso content visibility alto. Ah, o content visibility salva vidas. Salva mesmo. Ele instrui nativamente o motor do navegador a ignorar os cálculos pesados de geometria das partes da página que ainda estão fora do campo de visão lá embaixo. Mas sem removê-las oficialmente do código fonte preservando a descoberta do conteúdo para os robôs. Mas, sabe no fim das contas, a motivação para arrumar a casa não é apenas tecnológica ou moral.

Tem outro fator pesando, né? Há um martelo pesado batendo nessa bigorna agora. A legislação. É verdade. E o risco corporativo atrelado a esse martelo jurídico é enorme. Se você exporta serviços para fora, saiba que o rígido European Accessibility Act está em pleno vigor e aplicando regulamentações severas para e-commerce digitais desde 28 de junho de 2025. A Europa não brinca em serviço com regulação. Não brinca mesmo. E não é um problema distante. No cenário jurídico brasileiro o estatuto da pessoa com deficiência sob a Lei 13.146 promulgada lá em 2015 Já faz sempre, hein? Sim, já exige em seu artigo 63 a obrigatoriedade absoluta de acessibilidade plena para as plataformas online. E para se ter noção concreta de como o cerco fechou, o levantamento cita um caso de peso. Uma decisão contundente da justiça federal do Brasil, proferida no mês passado, julho de 2026. O que eles decidiram agora em julho?

Deram um prazo apertadíssimo de apenas 180 dias para a união adequar os portais federais as normas da WCAG estabelecendo a imposição de uma multa diária pesada de 10 mil reais por descumprimento. 10 mil reais por dia. Isso dói no bolso. A mensagem do mercado em 2026 é clara implacável. Optar por construir e manter um site inacessível hoje é na prática flertar abertamente com o passivo financeiro de processos jurídicos pesados. O tempo de tratar acessibilidade como perfumaria acabou há muito tempo. Com todo esse peso na balança, fica bem mais fácil justificar o investimento de tempo da equipe técnica para refazer aquele menu torto, né? E olhando em ventas que o ecossistema finalmente nos fornece de fábrica, direto no motor dos navegadores, sem precisar importar bibliotecas gigantes.

A pesquisa técnica traz um raio X direto da plataforma Webstatus.dev coletada na exata data de hoje, 18 de agosto de 2026. E a métrica chave que todos precisam acompanhar no painel do Webstatus.dev não é em que ano a tecnologia futurista foi anunciada com festa no evento. Mas sim o seu status de Baseline. Baseline é a palavra mágica agora. Isso. Uma funcionalidade entra no status universalmente suportado, ou Baseline apenas quando está estável no motor central de absolutamente todos os principais navegadores modernos do mercado. E o que a gente já tem no Baseline de interessante. O atributo HTML Popover atingiu esse cobiçado patamar global Baseline lá no dia 27 de janeiro de 2025. Isso permitiu que caixas flutuantes entregassem lógica de abertura e gerenciamento correto de foco via teclado de modo totalmente nativo.

Sem o desenvolvedor precisar escrever JavaScript arriscado. Uma dor de cabeça menos. Outro exemplo. Para painéis expansíveis em listas de perguntas frequentes, o famoso Acordião a combinação nativa das tags details acompanhada do recurso de agrupamento pelo atributo name, virou um comportamento universal Baseline com a atualização do dia 3 de setembro de 2024. Tudo sem JavaScript. Essa evolução constante da infraestrutura web é muito animadora. O relatório técnico até menciona as aguardadíssimas transições animadas fluidas na troca de contexto com a mesma URL-raiz. As famosas View Transitions atreladas ao mesmo documento. View Transitions nativas mudam o jogo. Sim. Elas consolidaram sua maturidade e abertura geral exigida para a certificação Baseline recentemente no calendário tecnológico durante o mês de outubro de 2025. Logo quando navegador Firefox liberou oficialmente ao público a versão 144. Porém vale o aviso dos testes do material.

Nem tudo são flores. Não. Aquele formato de galeria carrossel programado inteiramente e únicamente pelas folhas de estilo CSS que surgiu experimentalmente nos navegadores Chrome e Edge durante abril de 2025 ainda precisa de refinamento. Ele apresenta lacunas sérias de controle de uso pelo teclado o que não torna uma prática recomendada e segura para ambientes profissionais focados em vendas. O cenário de hoje condensa todo esse quebra-cabeça em um plano de ação fundamental, né? Com certeza. Sem tentar resumir toda a complexidade técnica, a diretriz de ouro do que discutimos hoje se apoia na firmeza da arquitetura. Como seria um checklist final para a equipe? Bom, assegure que haja um aroma de informação cristalino, escrito em cada rótulo de navegação.

Limpe as tags nav removendo definitivamente papéis incompatíveis como o infame role igual a menu. Esse role igual a menu é o grande vilão do dia. Sim. Tirem isso das listas simples. Codifique também a trava de tolerância o atraso protetor de 300 a 500 milissegundos nos painéis de MegaMenu. Projete alvos de clique com pelo menos 24 pixels no celular, mas mirando conforto ideal de 44 a 48 pixels físicos. E nas abas. Na estratégia visual de abas paralelas, garanta que elas escrevam seu estado atual diretamente na URL. E por último, ao arquitetar vitrines com centenas de registros defina o fluxo usando o botão de carregar mais, protegendo e restaurando as posições prévias de rolagem da tela. Sempre garantindo que o roda pé final continue acessível. Com certeza.

Aplicar com rigor esse fluxo não é só tapar buracos e fazer reparos preventivos de estética na estrutura do site. Isso aqui é basicamente montar um plano tático, formidável, focado puramente em estancar a hemorragia crônica de conversões por atritos escondidos. E parar o sangramento financeiro daquela fatia gigantesca e oculta do público. Exato. Os visitantes anônimos que desistem de navegar diariamente em absoluto silêncio. Sem nem registrar estatística de insatisfação na loja virtual bagunçando as planilhas e métricas cruciais de repensão. E repassando tudo que a gente conversou me ocorre um pensamento final intrigante aqui. O que você pensou? Avimos os impressionantes números medidos no levantamento referente a junho de 2025 na Cloudflare onde as novas classes de sistemas autônomos de inteligência artificial já eram responsáveis por dezenas e centenas de milhares de pesadas consultas na web sem intervenção orgânica.

Eles leem o código, rastreiam tudo silenciosamente e nunca movem o mouse de verdade. De fato, eles operam numa dimensão invisível para o design tendo isso em mente para os modelos de negócio focados na interface web hoje. Será que no próximo ciclo tecnológico o verdadeiro peso comercial da acessibilidade será cobrado não apenas pela métrica que avalia como a interface se ajusta à limitação humana visual ou motora? E avaliado por que então? Mas sim avaliado ironicamente pelo confluida silenciosa limpa e desobstruída toda a sintaxe do seu código for percebida aos olhos frios de um leitor computacional autônomo. À medida em que agentes inteligentes delegados começam a cruzar a rede fechando compras, filtrando ofertas e tomando decisões financeiras totalmente em nosso nome, o seu código precisa ser perfeitamente lido pelas máquinas.

Nossa, e são cenário complexo e uma provocação técnica inevitável sobre o design do amanhã. Reflete bem o peso do que tá por vir pra todo desenvolvedor e estrategista da área. E essa reflexão enorme fica na mesa pra quem escuta nossa análise hoje. Agradeço imensamente o seu tempo e o debate minucioso com essa riqueza de detalhes da engenheira atual pras plataformas na web. Eu que agradeço o espaço. Foi excelente desimpacotar tudo isso. Muito obrigada e até a nossa próxima conversa de aprofundamento.

Transcrição por reconhecimento de fala, conferida nos nomes de fonte, termos técnicos e números.

O custo de esconder a navegação

Esconder o menu custa uso, descoberta e velocidade, e o custo tem medição. O estudo do Nielsen Norman Group de 2016, com 179 participantes em seis sites, registrou: no desktop, as pessoas usaram o menu escondido em 27% dos casos, contra 48% com a navegação visível e 50% com a navegação combinada, em que parte dos itens fica exposta. No mesmo estudo, a descoberta de conteúdo caiu mais de 20% com a navegação escondida e as tarefas no desktop ficaram pelo menos 39% mais lentas frente à navegação visível. No celular a lentidão foi de 15% frente à navegação combinada, base diferente da anterior, e essa diferença sustenta a regra prática: o hambúrguer é tolerável no celular e um erro no desktop.

Uso da navegação no desktop conforme a visibilidade do menu Gráfico de barras horizontais com três condições de menu no desktop: navegação escondida atrás de um ícone é usada por 27% das pessoas; navegação visível, por 48%; navegação combinada, visível com complemento escondido, por 50%. Uma anotação registra que, com o menu escondido, as tarefas ficam pelo menos 39% mais lentas. Quem usa a navegação principal no desktop 0% 10% 20% 30% 40% 50% escondida atrás de ícone 27% visível sempre na tela 48% combinada visível + escondida 50% com o menu escondido, tarefas pelo menos 39% mais lentas
No desktop, a navegação escondida atrás de ícone é usada por 27% das pessoas, contra 48% quando visível e 50% na versão combinada; com o menu escondido, as tarefas ficam pelo menos 39% mais lentas. Fonte: Nielsen Norman Group, 2016, 179 participantes.

A consequência operacional é uma divisão de camadas. Ação de alta frequência mora na superfície, visível; o secundário desce para a gaveta. E antes de qualquer forma vem o rótulo: o Nielsen Norman Group chama de "aroma de informação" a propriedade de um link dizer, antes do clique, o que existe do outro lado. Trocar Saiba mais por Ver planos e preços é a melhoria mais barata de uma navegação, e o teste cabe numa frase: leia cada rótulo isolado do resto da tela e pergunte se dá para saber o que vem depois do clique.

A gaveta que o time entrega esta semana tem quatro requisitos: foco preso dentro do painel, fechamento por Esc, fechamento por clique fora e devolução do foco ao gatilho. O ícone leva a palavra "Menu" escrita ao lado do desenho. E o botão voltar do celular fecha a gaveta em vez de expulsar a pessoa do site: registra uma entrada no histórico ao abrir, escuta o evento de voltar para fechar, e desfaz a entrada quando o painel fecha pelo X ou pelo Esc. O curso Frontends com Vibecoding resolve isso em quinze linhas, e o prompt pronto está no fim da página.

Ilustração de uma mão segurando um celular com o polegar tocando a tela, uma barra inferior de navegação em rosa com três botões dourados ao alcance do polegar e uma gaveta lateral dourada entreaberta atrás do aparelho.
No celular, a ação frequente mora na barra inferior, na zona do polegar; a gaveta guarda o secundário.

Mega menu: o padrão dominante, com o defeito que 60% dos e-commerces medidos cometem

O mega menu aberto por hover é a navegação principal em 88% dos maiores e-commerces dos Estados Unidos, segundo o benchmark de navegação do Baymard Institute atualizado em setembro de 2025, e testes do Nielsen Norman Group desde 2009 confirmam que ele supera o dropdown comum, porque mostra tudo de uma vez em vez de pedir memória. O problema mora na implementação: o Baymard mediu em 2023 que 60% dos sites servem o hover sem atraso, e o painel abre e fecha sozinho quando o cursor cruza a barra, fechando na cara de quem move o mouse em diagonal para alcançar uma subcategoria. O instituto documenta o contraste com dois casos: na Dell, categorias vizinhas disparavam no caminho do cursor; na Staples, o atraso segura o painel certo aberto.

O problema da diagonal no mega menu Esquema de uma barra de navegação com três itens e um painel de mega menu aberto sob o item 1. Uma linha tracejada mostra a trajetória diagonal do cursor, do item 1 até uma subcategoria no canto oposto do painel; no caminho, o cursor cruza a área do item 2, o que fecharia o painel. Um selo indica a proteção: atraso de 300 a 500 ms antes de trocar o painel. Trajetória do cursor sobre o mega menu aberto Item 1 Item 2 Item 3 Subcategoria A1 Subcategoria A2 Subcategoria A3 Subcategoria B1 Subcategoria B2 Subcategoria B3 Subcategoria C1 Subcategoria C2 Subcategoria C3 a diagonal cruza o item 2: sem proteção, o painel troca no meio do caminho atraso de 300 a 500 ms
Ao mover o cursor em diagonal do item 1 para uma subcategoria distante, a trajetória cruza o item 2 e o painel troca antes da chegada; um atraso de 300 a 500 ms na troca protege o percurso. Fonte: Baymard Institute, 2023: 60% dos sites de e-commerce do benchmark do instituto servem o hover sem atraso.
Demonstração ao vivo. Passe o cursor por Ferramentas e siga em diagonal até Modelos de e-mail, no canto oposto do painel. Com atraso de 0 milissegundo o painel troca no meio do caminho, porque a diagonal cruza o item vizinho; com 300 milissegundos ele espera você chegar. O contador registra quantas trocas acidentais o percurso produziu. No celular, toque nos nomes.
Atraso antes de trocar o painel

Trocas de painel nesta passada: 0.

A correção custa uma configuração: atraso de 300 a 500 milissegundos antes de abrir e antes de fechar, faixa que, segundo o Baymard em 2023, elimina a maioria dos disparos acidentais. No celular, o mega menu vira acordeão ou gaveta em vez de replicar o grid de colunas. E o tamanho da oportunidade aparece no benchmark 2025 do mesmo instituto, com mais de 16.000 avaliações: 58% dos sites desktop e 67% dos mobile têm navegação de home e categoria classificada de medíocre a ruim. Navegação bem executada é minoria mensurada, e por isso é vantagem competitiva de quem a trata como projeto.

A ancoragem do painel sai do JavaScript

Grudar o painel no gatilho, recalcular a posição na rolagem e virar o bloco de lado quando falta espaço na tela sempre foi trabalho de biblioteca de posicionamento em JavaScript. O CSS assumiu a tarefa: anchor-name no gatilho, position-anchor e a função anchor() no painel, e @position-try descrevendo para onde o painel escapa quando a borda da janela chega perto. O Firefox 147 liga o recurso por padrão e o Safari 26 serve @position-try e position-try-fallbacks, com cobertura de cerca de 91% do tráfego global (webstatus.dev, 18/08/2026).

Ver o painel virando de lado quando falta espaço na janela O painel ancorado escapa para o outro lado quando a borda da janela chega perto Dois quadros lado a lado representam a mesma janela. No quadro da esquerda sobra espaço à direita do gatilho e o painel abre para a direita, na posição preferida. No quadro da direita o gatilho está colado na borda, e o painel abre para a esquerda, na posição alternativa descrita por arroba position-try. Posição preferida Alternativa do @position-try gatilho painel abre à direita gatilho painel escapa à esquerda borda da janela Fora do Baseline em 18/08/2026: o bloco inteiro entra dentro de @supports.
A mesma marcação em duas situações de espaço. A posição preferida vale enquanto couber; quando a borda chega perto, o navegador aplica a alternativa declarada em @position-try, sem uma linha de JavaScript. Fonte: webstatus.dev, 18/08/2026.

Sobra a fatia de público fora dessa faixa, e ela decide a forma de escrever a folha de estilo. O conjunto segue fora do Baseline no mesmo retrato, o que mantém a verificação de suporte obrigatória: o bloco ancorado entra dentro de @supports (position-anchor: --gatilho), com um posicionamento simples e previsível servindo de base para quem estiver fora. Quem já carrega uma biblioteca de posicionamento no pacote pode aposentá-la por etapas, começando pelos painéis que só precisam abrir logo abaixo do gatilho.

Os quatro sentidos de "menu", e o erro que a IA repete

O erro mais caro em acessibilidade de navegação é usar o papel ARIA de menu em navegação de site. O exemplo oficial de navegação do W3C, no guia de práticas WAI-ARIA, declara que a própria implementação dispensa esse papel: navegação típica de site fica sem as interações de teclado que as tecnologias assistivas esperam de um widget com o papel de menu, então o padrão certo é o de área que abre e fecha (disclosure), com <nav> e links. O papel de menu fica reservado ao menu de ação, com comandos como editar, duplicar e excluir, que imita os menus do sistema operacional e responde ao teclado completo: setas circulando entre os itens, Home e End, uma letra pulando para o item, Enter acionando e Esc fechando com o foco de volta no gatilho.

1. Navegação de site

Lista de links para outras páginas: <nav>, lista e link do próprio HTML. O papel de menu traria navegação por setas que ninguém espera em link de site.

2. Área que abre e fecha

Um botão mostra e esconde um trecho: submenu, navegação de celular, FAQ. O botão declara se está aberto e a que área se refere. É o padrão que resolve a maioria dos mega menus.

3. Menu de ação

Comandos sobre a própria tela. Aqui entra o papel de menu, com o teclado completo descrito acima. Improvisar com div e onClick exclui em silêncio quem navega sem mouse.

4. Barra de menu de aplicativo

Faixa permanente tipo Arquivo/Editar. É rara na web e quase sempre escolhida por engano.

Qual dos quatro padrões de menu usar Fluxograma de decisão em três perguntas. Se o clique leva a outra página, é navegação de site: nav com links, sem role de menu. Se não, e o controle mostra e esconde um bloco, é uma área que abre e fecha, o padrão disclosure. Se não, e o controle executa um comando na tela, é menu de ação: role de menu e teclado completo. Se nada disso, é a barra de menu de aplicativo, rara na web. Três perguntas separam os quatro padrões O clique leva a outra página? sim Navegação de site nav + links, sem role de menu não Mostra e esconde um bloco? sim Área que abre e fecha padrão disclosure não Executa comando na tela? sim Menu de ação role de menu e teclado completo não Barra de menu de aplicativo rara na web
Três perguntas separam os quatro padrões de menu: link que navega usa nav e links sem role de menu; bloco que abre e fecha usa disclosure; comando na tela usa menu de ação com role de menu e teclado completo; a barra de menu de aplicativo é rara na web. Fonte: padrões do guia W3C WAI-ARIA APG.

Esse é também o erro mais frequente em código gerado por inteligência artificial: o modelo lê a palavra "menu" e aplica o papel de aplicativo. A correção entra no próprio pedido ao agente, numa frase: a navegação primária usa <nav> e links, sem papel de menu. Nas primitivas, o shadcn/ui separa os dois propósitos em componentes distintos, NavigationMenu para links e DropdownMenu para ações, e desde julho de 2026 abre projetos novos sobre o Base UI, mantido pela equipe do MUI e estável desde 11 de dezembro de 2025. Do lado nativo, o atributo popover entrega abertura, fechamento, Esc e clique fora sem JavaScript, com uma ressalva: ele define papel nenhum, então o menu de ação continua precisando do papel declarado ou de uma primitiva por baixo.

O select estilizável encurta um caminho conhecido

A lista suspensa de escolha única virou reimplementação obrigatória por um motivo de aparência: o <select> do HTML aceita pouca estilização, e o time reescreve o controle inteiro com role="listbox", gestão de foco, digitação para pular item e leitura de estado. A proposta do CSSWG de select estilizável ataca a causa: com appearance: base-select, o navegador entrega o mesmo controle nativo aberto à folha de estilo, e os casos simples de seleção deixam de exigir o widget refeito à mão.

A adoção pede cautela pelo estado atual: a implementação corre nos navegadores Chromium, o recurso ainda está sem Baseline, e por isso ele entra como melhoria progressiva sobre o <select> nativo que já funciona em toda parte. Quem escrever assim ganha duas vezes: a seleção continua acessível onde o recurso falta, e o dia em que ele chegar dispensa reescrita.

Alvos de toque: cada número com o dono certo

Números de alvo de toque circulam misturados, e a mistura reprova auditoria. O piso exigível é um só: 24 por 24 pixels de CSS, no critério 2.5.8 da WCAG 2.2, nível AA (W3C, 2023), com exceções para alvos suficientemente espaçados, links em linha de texto e alvos cujo tamanho é essencial. Tudo acima disso é conforto, e cada plataforma pede o seu: a Apple recomenda 44 pontos no iOS e lista 28 como mínimo, o Google pede 48 dp no Android, e o nível AAA da mesma WCAG pede 44 por 44. Quem desenha só para o piso legal entrega um botão que passa na auditoria e falha no polegar, porque três alvos de 24 pixels colados somam a mesma área de erro que um alvo só. A folga de pelo menos 8 pixels entre vizinhos é o que separa a conformidade do uso.

Alvos de toque: a norma exigível, o nível AAA e as recomendações de plataforma, com o dono de cada número.
RéguaValorQuem exige, e a que título
Piso de conformidade24 por 24 pixels de CSSWCAG 2.2, critério 2.5.8, nível AA, com exceções para alvos espaçados e links em linha de texto (W3C, 2023)
Conforto de norma44 por 44 pixels de CSSWCAG 2.2, critério 2.5.5, nível AAA (W3C, 2023)
Recomendação Android48 por 48 dpGoogle, documentação de acessibilidade do Android
Padrão Apple44 por 44 pontos, mínimo de 28 por 28Apple Human Interface Guidelines, tabela de tamanhos de controle do iOS
Barra inferior de aplicativoTrês a cinco destinos de igual importânciaMaterial Design 3 (Google); a Apple pede "o número apropriado", sem fixar quantidade
Folga entre alvosPelo menos 8 pixels entre vizinhosCurso Frontends com Vibecoding: três alvos de 24 colados passam no piso e continuam errados

Normas e documentações oficiais, conferidas em 18/08/2026. A Apple recomenda 44 pontos e lista 28 como mínimo.

Tamanhos mínimos de alvo de toque, em escala Quatro quadrados desenhados em proporção real comparam os tamanhos mínimos de alvo de toque: 24 px do WCAG 2.2 nível AA, 28 px do mínimo Apple, 44 px do WCAG nível AAA e do padrão Apple, e 48 dp do Google Android. Entre os dois primeiros quadrados, uma cota indica a folga de 8 px exigida entre alvos pequenos. Alvos de toque lado a lado, na mesma escala 24 px WCAG 2.2 AA folga de 8 px 28 px mínimo Apple 44 px WCAG AAA e padrão Apple 48 dp Google Android tracejado: piso legal, traço cheio: confortável
Em escala, o piso legal de 24 px do WCAG 2.2 AA é quase metade da área dos alvos confortáveis: 28 px no mínimo Apple, 44 px no WCAG AAA e padrão Apple, 48 dp no Google Android, com folga de 8 px entre alvos pequenos. Fonte: normas e documentações oficiais, verificadas em 18/08/2026.
Laboratório visual · A forma visual que explica a decisão

Quando uma aba ajuda a encontrar a próxima ação?

A pessoa procura revisar uma campanha. O menu oferece ferramentas, relatórios e configurações; a tarefa atravessa os três lugares. Este caso mostra como distinguir uma sequência de trabalho de visões paralelas sobre o mesmo assunto.

Objetivo: revisar a campanha. Visões: anúncio e destino. Sequência: conferir e liberar.
Ilustração esquemática para estudo, sem escala quantitativa. Objetivo: revisar a campanha · Visões: anúncio e destino · Sequência: conferir e liberar. Baixar a ilustração
Ler os dois casos e suas decisões comentadas

Comparar anúncio e destino

A pessoa alterna entre o anúncio e sua página de destino para revisar a coerência da mensagem.

Decisão: a condição foi atendida. As duas visões permitem comparar o mesmo percurso sem impor uma ordem de conclusão.

Abas podem manter o contexto, desde que seleção e navegação por teclado estejam claras.

Aprovar antes de publicar

A publicação só pode ocorrer depois da revisão e da aprovação da peça.

Decisão: falta conferir ou corrigir. Existe dependência entre as etapas; apresentá-las como visões equivalentes esconde o pré-requisito.

Use uma sequência com estado e critério para avançar.

Consultar o fluxo completo em tabela
Os conteúdos são visões independentes do mesmo objeto?
EtapaO que conferirAção
Observar a tarefaPeça que a pessoa encontre uma ação concreta. Anote onde ela espera localizar o próximo passo.Registre objetivo e ponto de hesitação.
Separar os caminhosVisões alternativas do mesmo objeto podem usar abas; etapas dependentes precisam indicar ordem e pré-requisitos.Classifique a relação entre os conteúdos.
Testar o retornoA pessoa deve reconhecer a visão selecionada, trocar por teclado e voltar sem perder a referência.Confira nome, seleção e foco.
Se atendida: Usar visões paralelasMantenha nomes curtos e significativos para comparar dimensões do mesmo objeto.Associe cada aba ao painel correspondente.
Se pendente: Mostrar a sequênciaSe a etapa seguinte depende da anterior, exponha a dependência com passos e critério de avanço.Descreva o que falta antes de liberar a próxima ação.
Conferir no celularRepita a tarefa em largura pequena, com foco visível e retorno à seção de origem.Revise os rótulos que exigiram adivinhação.

O que preparar no trabalho

Mapa da tarefa com objetivo, visões, dependências, rótulos e comportamento por teclado.

Ponto de atenção. O nome do departamento raramente explica a próxima ação que o leitor está procurando.

Base do exercício: a seção correspondente desta página. Casos ilustrativos construídos para estudo; não representam resultados medidos. Revisão do módulo: .

Abas: visões paralelas, com o critério de decisão

Abas alternam visões paralelas do mesmo recurso e ficam fora da navegação de topo do site. O Nielsen Norman Group, em revisão de 2024 do artigo clássico sobre abas, dá o critério que decide: quando a pessoa precisa comparar informação entre painéis, a troca repetida de aba cobra memória de curto prazo e aumenta o custo de interação, e uma página única vence. Quanto menos abas, melhor; o conteúdo das abas não padrão é suplementar, nunca crítico; e quando o conteúdo não forma grupos nítidos, aba é o controle errado.

O teclado vem do guia de práticas do W3C: as setas circulam entre as abas, e a ativação automática ao focar só é recomendada quando o painel aparece sem latência perceptível, o que na prática exige conteúdo pré-carregado. Painel que carrega da rede pede ativação manual, com Enter ou Espaço. A aba selecionada se marca para o leitor de tela, com o indicador visual somando mais de um sinal além da cor. Dois usos dos estudos de caso do curso: na documentação da Stripe, as abas de linguagem do painel de código são um grupo de abas de verdade, com troca pelas setas; na Booking e na LATAM, a caixa de busca da home pede a intenção primeiro em abas de produto, e cada aba herda os dados de viagem já digitados.

Aba é estado, e o lugar dela é a URL. A documentação oficial do Next.js lista os três ganhos: o endereço fica favoritável e compartilhável, o servidor monta a página já no estado certo, e a analítica enxerga filtro e busca sem código extra no cliente. A ferramenta de referência em React é o nuqs, um useState que mora na query string, na versão 2.9.6 de 17/08/2026. Filtro em useState comum some no recarregamento, quebra o botão Voltar e faz o link chegar vazio na mão de quem o recebe.

Demonstração ao vivo. Troque de aba com o dedo ou com as setas do teclado e acompanhe o endereço logo abaixo: ele muda junto. Copie esse endereço, abra em outra janela e a mesma aba volta selecionada. O conteúdo dos três painéis já veio no HTML, e por isso a troca ao focar acontece sem espera.

Título, texto e imagem da peça publicada, do jeito que o visitante encontra no anúncio.

esta página, com o parâmetro ?aba= ainda sem valor

A troca substitui a entrada do histórico em vez de empilhar uma nova, então o botão voltar do aparelho continua saindo da página em vez de desfazer clique por clique.

Paginar, carregar mais ou rolagem infinita: a decisão com dono

Para lista de produtos, o teste de usabilidade do Baymard Institute concluiu que o botão de carregar mais, combinado com carregamento preguiçoso, é a implementação superior, e a atualização de pesquisa de 2024 do instituto, com mais de 5.550 horas de teste, manteve a preferência. As faixas de quantidade medidas em 2020: o desktop carrega de 100 a 150 itens para produto visual e de 50 a 100 para produto de especificação; o celular, de 15 a 30; e 52% dos sites desktop do benchmark do Baymard erram essa quantidade.

O Nielsen Norman Group, em artigo de 2022, delimita o território da rolagem infinita: fluxo de itens homogêneos consumido sem tarefa específica, como um feed social. Fora desse território, a rolagem infinita clássica cobra três vezes: o rodapé fica inalcançável, o SEO sofre e a acessibilidade quebra.

Como paginar uma lista longa Fluxograma de decisão em três perguntas. Se a lista é um feed homogêneo, sem tarefa específica, a resposta é rolagem infinita com o Feed Pattern. Se não, e é uma lista de produtos, a resposta é o botão carregar mais com lazy-load, recomendação do Baymard. Se não, e é um grid de dados ou uma consulta com volta ao ponto, a resposta é paginação numerada. A lista longa decide o padrão de carregamento Feed homogêneo, sem tarefa específica? sim Rolagem infinita com Feed Pattern não Lista de produtos? sim Carregar mais + lazy-load recomendação do Baymard não Grid de dados ou consulta com volta ao ponto? sim Paginação numerada endereço estável, volta garantida
A natureza da lista decide o padrão: feed homogêneo pede rolagem infinita com Feed Pattern; lista de produtos pede carregar mais com lazy-load; grid de dados ou consulta com volta ao ponto pede paginação numerada. Fontes: Baymard 2016/2024 e Nielsen Norman Group 2022.
Onde cada padrão de carregamento vence e o preço que ele cobra, com a fonte de cada linha.
PadrãoOnde venceO preço, com a fonte
Paginação numeradaConsulta com destino, comparação e volta ao ponto; grids de dadosUm clique a mais por página; o AG Grid a recomenda como a melhor saída de acessibilidade para volume grande (documentação oficial)
Carregar mais + lazy-loadLista de produtos em e-commerceImplementação superior no teste do Baymard (2016, mantida na atualização de 2024); exige URLs paginadas por baixo para o Google
Rolagem infinitaFeed homogêneo sem tarefa específica (Nielsen Norman Group, 2022)Rodapé inalcançável, SEO e acessibilidade; em resultados de busca, o Baymard a desaconselha desde 2016
Demonstração ao vivo. A mesma lista de 60 itens nos três padrões. Role a caixa até o fim em cada modo e acompanhe o placar: o endereço da página, o rodapé e o que o rastreador do Google encontra sem clicar em botão nenhum. Com a rolagem infinita ligada, o rodapé foge a cada leva nova, que é o custo descrito na tabela acima.
Padrão da lista

    Rodapé do site

    A falha que mais irrita tem número e mecanismo. Em 2020 o Baymard mediu que 13% dos grandes e-commerces devolvem o visitante ao topo da lista quando ele volta da página de produto, e o visitante desiste de refazer a rolagem. O controle disso é a History API do navegador, com scrollRestoration, e a condição real: em lista carregada dinamicamente, restaurar a posição só funciona se o aplicativo repovoar os itens antes de restaurar. Os prompts de lista longa no fim da página cobrem o caso.

    Ilustração de uma esteira de cartões de produto que se estende em perspectiva até o horizonte, com um grande botão circular rosa de carregar mais no meio do caminho e marcos numerados de página ao longo das bordas.
    A lista longa precisa de marcos: o botão de carregar mais na superfície e as páginas numeradas por baixo, para o visitante, o Google e o leitor de tela.

    O que o Google exige por baixo

    A documentação vigente do Google Search Central aposentou o rel=next/prev ("o Google não usa mais essas tags") e explica o risco da rolagem infinita para descoberta: os rastreadores do Google clicam botão nenhum e em geral disparam função nenhuma de JavaScript. De uma coleção indexável, ela pede três coisas:

    A saída é manter URLs paginadas por baixo da experiência de rolagem. Em 2026 isso vale dobrado, porque agentes de IA também leem sites: na semana de 19 a 26 de junho de 2025 a Cloudflare mediu para a Anthropic uma razão de cerca de 71.000 requisições de página para cada visita referida, limite superior declarado pela própria Cloudflare, já que a referência vinda do aplicativo do Claude não envia cabeçalho Referer. Conteúdo que só existe atrás de um clique fica fora dessa leitura.

    A página 2 pronta antes do clique

    Paginação numerada cobra uma espera a cada avanço, e essa espera tem tratamento declarativo. A Speculation Rules API recebe um bloco <script type="speculationrules"> com regras de prefetch e prerender, e o navegador busca ou monta a próxima página antes do clique, de modo que a troca chega perto do instantâneo. O mesmo vale para a aba que muda de URL, o caso que esta página já trata como estado endereçável.

    Nos navegadores Chromium o recurso funciona; os demais ignoram o bloco sem efeito colateral, o que dispensa verificação de suporte no código. Duas regras de bom senso seguram o custo: prerender apenas no destino de alta probabilidade, como o link da próxima página, e prefetch no resto, porque montar a página inteira gasta memória e banda de quem talvez sequer clique.

    Acessibilidade e a régua legal

    O padrão oficial do W3C para rolagem infinita acessível é o Feed Pattern do guia de práticas: Page Down e Page Up movem o foco entre os artigos, e Ctrl+End e Ctrl+Home saltam para depois e antes do feed, que é como o usuário de leitor de tela escapa da lista. Nada disso vem de graça: exige gestão de foco e atributos de posição.

    Virtualização cobra em acessibilidade

    A documentação do próprio AG Grid admite que as linhas saem de ordem no DOM para leitores de tela e recomenda paginação como a melhor saída em volume grande.

    O custo de memória caiu

    O TanStack Table v9, estável desde 4 de agosto de 2026, reduziu em até 86% o heap retido no cenário de um milhão de linhas, segundo o benchmark do fornecedor.

    A alternativa nativa

    content-visibility: auto pula a renderização mantendo o conteúdo no Ctrl+F e na ordem de tabulação, ao contrário da virtualização por JavaScript, que remove o nó (MDN).

    A régua legal fecha a conta. O European Accessibility Act se aplica desde 28 de junho de 2025 e alcança nominalmente o comércio eletrônico; o artigo 63 da Lei 13.146/2015 obriga acessibilidade nos sites de empresas com sede ou representação no Brasil; e em julho de 2026 a Justiça Federal concedeu liminar em ação civil pública do Ministério Público Federal dando à União 180 dias para apresentar o plano de acessibilidade dos sites federais, sob multa diária de R$ 10 mil, decisão provisória e sujeita a recurso.

    O que a plataforma web já entrega, com data

    Recurso de navegação nativo se adota pelo status Baseline do dia, com o estado final funcionando sem ele. Cinco recursos de navegação mudaram de status entre setembro de 2024 e janeiro de 2026 (webstatus.dev, 18/08/2026):

    Linha do tempo dos recursos de navegação, 2024 a 2026 Linha do tempo de 2024 a 2026 com cinco marcos. Em 03/09/2024, details name chega ao Firefox 130 e entra no Baseline. Em 27/01/2025, popover chega ao Safari iOS 18.3 e entra no Baseline. Em 01/04/2025, o carrossel CSS chega só ao Chrome 135 e fica fora do Baseline. Em 14/10/2025, View Transitions de mesmo documento chega ao Firefox 144 e entra no Baseline. Em 13/01/2026, anchor positioning chega ao Firefox 147 e ainda está fora do Baseline. O que já é Baseline e o que ainda não é 2024 2025 2026 03/09/2024 details name (Firefox 130) Baseline 27/01/2025 popover (Safari iOS 18.3) Baseline 01/04/2025 carrossel CSS só no Chrome 135 fora do Baseline 14/10/2025 View Transitions mesmo documento (Firefox 144) Baseline 13/01/2026 anchor positioning (Firefox 147) fora do Baseline
    Entre 2024 e 2026, details name (03/09/2024, Firefox 130), popover (27/01/2025, Safari iOS 18.3) e View Transitions de mesmo documento (14/10/2025, Firefox 144) entraram no Baseline; o carrossel CSS (01/04/2025, só no Chrome 135) e o anchor positioning (13/01/2026, Firefox 147) seguem fora. Fonte: webstatus.dev e release notes oficiais, retrato de 18/08/2026.
    O que a plataforma web já entrega para navegação, com o status e a data de cada recurso.
    RecursoStatus em 18/08/2026O que muda no menu
    Atributo popoverBaseline desde 27/01/2025, fechado pelo Safari do iOS 18.3Painel flutuante com abertura, fechamento, Esc e clique fora sem JavaScript
    <details name> (acordeão exclusivo)Baseline desde 03/09/2024, fechado pelo Firefox 130Grupo de seções em que só uma fica aberta, sem script
    View Transitions no mesmo documentoBaseline desde 14/10/2025, fechado pelo Firefox 144Transição de tela contínua em navegação de aplicação
    View Transitions entre documentosFora do Baseline, sem FirefoxSó como melhoria progressiva
    Posicionamento por âncora do CSSChegou ao Firefox 147 em 13/01/2026; o conjunto segue como limitado no webstatus.devPopover ancorado ao gatilho sem biblioteca, ainda atrás de verificação de suporte
    Carrossel CSS (::scroll-button, ::scroll-marker)Só Chrome e Edge, desde a versão 135 de 01/04/2025Botões e marcadores nativos de carrossel; produção exige retaguarda

    Status lidos na API oficial do webstatus.dev e nas release notes de Mozilla e Google em 18/08/2026. Baseline é retrato datado: confira no dia em que for escrever o código.

    O item-pai aceso pelo filho, com :has()

    Marcar qual seção do site está aberta costuma custar uma passada de JavaScript que lê o endereço, compara com cada link e acrescenta uma classe no item-pai. O seletor :has() resolve o mesmo problema na folha de estilo: nav :has(a[aria-current="page"]) alcança o ancestral que contém o link ativo e o destaca a partir do filho. O seletor está em Baseline, e esta página já marca a subaba corrente com aria-current="page", de modo que o destaque nasce do atributo que a acessibilidade cobrava de qualquer jeito.

    Duas cautelas preservam o ganho. O sinal visual do item aceso soma peso de traço, cor de fundo ou barra lateral, para evitar dependência exclusiva de cor, na mesma régua do indicador de aba selecionada. E o atributo aparece uma vez só por página, no link da página corrente, porque dois aria-current="page" deixam quem usa leitor de tela sem referência de posição.

    O clique de menu medido em produção: INP

    O número que decide no seu site tem nome: Interaction to Next Paint, Core Web Vital oficial desde março de 2024, com meta de até 200 ms no percentil 75 segundo o web.dev. Estudo comportamental, como o do Nielsen Norman Group e o do Baymard Institute, descreve o comportamento médio de outra gente, em outro produto; o INP registra quanto tempo passa entre a pessoa tocar o item de menu e a tela mostrar a resposta, no seu público. É o único número desta página que vem do campo.

    A ligação com a arquitetura do menu é direta. Painel que só monta a lista no clique paga a montagem dentro da janela medida; mega menu com dezenas de itens e imagens cobra estilo e layout no mesmo instante; animação de abertura que ocupa a linha principal empurra a pintura para depois. Quantidade de itens, profundidade de níveis e custo de abrir o painel aparecem no percentil 75 do INP, e é ali que a discussão de arquitetura sai da opinião.

    O orçamento de 200 milissegundos do clique de menu, por arquitetura do painel Duas barras horizontais na mesma escala de 0 a 500 milissegundos comparam a resposta do clique de menu. O painel montado no clique estoura a meta; o painel com a marcação já pronta no HTML, apenas revelada no clique, fica dentro dela. Uma linha vertical tracejada marca os 200 milissegundos do percentil 75. Ilustração esquemática, sem escala medida. Quem monta o painel decide o INP meta 200 ms (p75) montado no clique acima da meta pronto no HTML, só revelado dentro da meta 0 100 200 300 400 500 ms a barra maior soma montar a lista, calcular estilo e animar a abertura
    Ilustração esquemática para estudo, sem escala medida: as barras comparam arquiteturas de painel. Nenhuma delas é medição de um site real. A meta de 200 milissegundos no percentil 75 é a régua do INP, e o número de cada site vem do campo. Fonte da meta: web.dev, Core Web Vitals.

    O menu vira item de painel. A mesma tela que acompanha conversão passa a mostrar o INP do percentil 75 quebrado por dispositivo, porque celular antigo e desktop novo vivem realidades distintas de processamento. Quando um mega menu novo entra no ar, a comparação de antes e depois nesse número diz se a navegação melhorou para quem usa, e a resposta chega em dias, sem esperar a próxima rodada de teste de usabilidade.

    Os números do guia num arquivo para o mural do time

    O infográfico traz os cinco números que decidem uma navegação: o uso do menu visível contra o escondido, o atraso de hover do mega menu, o papel ARIA de cada tipo de menu, os alvos de toque e o critério de lista longa. Cada número aparece com a fonte, para o time discutir a peça sem voltar a esta página. Gerado no NotebookLM a partir do dossiê de pesquisa.

    Infográfico em português intitulado Precisão na navegação, UX baseada em dados: uso do menu visível em 48% contra 27% do escondido e tarefas 39% mais lentas (Nielsen Norman Group, 2016); atraso de 300 a 500 ms no mega menu (Baymard, 2023); role de menu exclusivo para ações, com nav e links para navegação (W3C); carregar mais com lazy loading superando paginação e rolagem infinita em e-commerce (Baymard, 2024); e o comparativo de alvos de toque de 24, 44 e 48.
    O resumo da aula em uma peça, com cada número acompanhado da fonte. Baixe o arquivo em alta.

    Prompts prontos

    Menu suspenso operável por teclado (do curso)

    Torne este menu suspenso totalmente operável por teclado:
    - Enter/Espaço no gatilho abre; Esc fecha e devolve o foco ao botão gatilho.
    - O botão expõe aria-expanded e aria-haspopup.
    - A navegação primária do site usa <nav> e links, SEM role="menu";
      role="menu" só no menu de ações.
    - Respeite prefers-reduced-motion na animação de abertura.
    - Foco visível em todos os itens (:focus-visible, anel de 2px).
    Mostre o TSX.

    Gaveta que fecha no botão voltar do aparelho (do curso)

    Implemente uma gaveta de filtros para celular com o botão voltar do
    aparelho significando "fechar o painel", em três movimentos:
    1. Ao abrir, registre uma parada no histórico
       (window.history.pushState({ gaveta: true }, "")).
    2. Escute o evento popstate e use-o apenas para fechar a gaveta,
       nunca para navegar.
    3. Se a gaveta fechar pelo X ou pelo Esc, desfaça a parada
       (window.history.back() se o estado atual for da gaveta);
       sem esta limpeza sobra um "voltar" morto no histórico.
    Complete com: foco preso no painel, Esc fecha, clique fora fecha,
    foco devolvido ao gatilho, e a lista interna com
    overflow-y: auto e overscroll-behavior: contain.

    Lista longa que o Google e o leitor de tela enxergam

    Implemente a lista de itens com botão "Carregar mais" e lazy-load,
    com estas garantias:
    - URLs paginadas reais por baixo (History API): cada lote avança
      ?pagina=N, com link <a href> para a próxima página presente no HTML
      e canonical próprio por página (nunca tudo para a página 1).
    - Ao voltar da página de detalhe, o visitante retorna à MESMA posição:
      repovoe os itens carregados antes de restaurar o scroll
      (history.scrollRestoration).
    - Acessibilidade: siga o Feed Pattern do W3C APG (Page Down/Page Up
      entre itens; Ctrl+End/Ctrl+Home saltam o feed); o rodapé permanece
      alcançável; o foco nunca fica preso na lista.
    - Estado de filtro e página na URL com nuqs, nunca em useState solto.
    Critério de aceite: com JavaScript desligado, a página 2 existe e tem
    conteúdo; com leitor de tela, dá para sair da lista.
    Guias para postar

    Dois guias prontos para o LinkedIn e o Instagram

    Dois cartões prontos para publicar: o erro de papel ARIA que a IA repete e os cinco requisitos da gaveta de filtros. Cada um sai em quadrado ou retrato, com a legenda já escrita.

    Design · Navegação e menusLeadlovers 2026

    Três perguntas separam os padrões de menu

    O papel de menu do ARIA cabe num caso só, e o resto do site vive de link comum.
    1. O clique leva a outra página. Navegação de site usa nav com lista e links, sem papel de menu.
    2. O controle mostra e esconde um bloco. Use o padrão de área que abre e fecha.
    3. O controle executa um comando na tela. Aqui entra o papel de menu, com teclado completo.
    brasilgeo.ai/leadlovers2026Guia 1 de 2
    Legenda sugerida para LinkedIn e Instagram
    O erro mais caro de acessibilidade em navegação vem de uma palavra só: menu.
    
    O modelo de IA lê "menu" e aplica na barra do site o papel ARIA que pertence ao menu de ação, e a navegação passa a exigir setas de teclado que ninguém espera de um link. Três perguntas separam os padrões. Se o clique leva a outra página, use nav com lista e links. Se o controle mostra e esconde um bloco, use área que abre e fecha. Se o controle executa um comando na tela, aí sim entra o papel de menu, com o teclado completo.
    
    Coloque essa regra dentro do próprio pedido ao agente e o defeito deixa de nascer.
    
    Salve o cartão e confira a barra de navegação que o seu time publicou por último.
    
    Guia completo: brasilgeo.ai/leadlovers2026/design/navegacao/
    
    #Leadlovers #Acessibilidade #UX #Frontend
    Design · Navegação e menusLeadlovers 2026

    A gaveta de filtros tem cinco requisitos

    Confira a lista antes de mandar a gaveta do celular para produção.
    • Prenda o foco dentro do painel. Quem navega por teclado circula só entre os filtros.
    • Feche pela tecla Esc. O foco volta para o botão que abriu a gaveta.
    • Feche no clique fora do painel. A área escurecida do fundo também encerra.
    • Registre uma parada no histórico ao abrir. O botão voltar do aparelho fecha a gaveta.
    • Desfaça a parada ao fechar pelo X. Sem essa limpeza sobra um voltar morto.
    brasilgeo.ai/leadlovers2026Guia 2 de 2
    Legenda sugerida para LinkedIn e Instagram
    A gaveta de filtros que expulsa o visitante do site no botão voltar do aparelho custa a venda inteira.
    
    Cinco requisitos deixam o painel pronto para produção: foco preso dentro dele, fechamento pela tecla Esc, fechamento no clique fora, uma parada registrada no histórico ao abrir para o botão voltar fechar a gaveta, e a limpeza dessa parada quando o painel fecha pelo X. Sem a limpeza, sobra um voltar morto no histórico.
    
    O ícone da gaveta leva a palavra Menu escrita ao lado do desenho, e a ação frequente do celular continua visível na barra inferior, na zona do polegar.
    
    Comente qual desses requisitos falta na gaveta do seu produto.
    
    Guia completo: brasilgeo.ai/leadlovers2026/design/navegacao/
    
    #Leadlovers #UXMobile #Navegacao #Frontend

    As fontes, uma a uma

    Todo número deste guia foi lido no documento original, e o endereço de cada um está abaixo. A lista serve a duas leituras: quem quiser conferir um dado antes de levá-lo para uma reunião abre o link direto, e quem precisar defender a decisão internamente cita a fonte primária em vez desta página. Os estudos de comportamento descrevem populações específicas, quase sempre benchmarks de comércio eletrônico, e essa condição viaja no texto de cada item. Normas e documentação de plataforma mudam de versão, então a data ao lado registra quando a página leu cada documento.

    Documentos lidos em 10 de setembro de 2026. Um estudo de comportamento descreve a população que ele mediu. Prever o resultado de uma mudança no seu site é outra coisa: o número que vale para o seu público é o do campo, na seção sobre INP.

    Perguntas frequentes

    O menu hambúrguer funciona no computador?

    Os números do Nielsen Norman Group, de 2016, mostram o custo: no desktop, o menu escondido atrás do ícone de três linhas foi usado em 27% dos casos, contra 48% da navegação visível, e as tarefas ficaram pelo menos 39% mais lentas. No celular o dano cai para 15%, o que torna o padrão tolerável em tela pequena. Ação de alta frequência mora na superfície.

    Como evitar que o mega menu abra e feche sozinho com o mouse?

    Com um atraso de 300 a 500 milissegundos antes de abrir e antes de fechar o painel. Essa janela perdoa o movimento diagonal do cursor até a subcategoria e elimina a maioria dos disparos acidentais. O Baymard Institute mediu em 2023 que 60% dos sites implementam mal o menu suspenso ativado por hover, e o conserto cabe numa linha de código.

    Quando usar o papel ARIA de menu na navegação de um site?

    Apenas no menu de ação que imita aplicativo, com comandos como editar e excluir. A navegação primária usa a tag nav com uma lista de links, sem papel de menu: o padrão do W3C declara que esse papel exige controle complexo de teclado e, aplicado a links comuns, trava quem navega por leitor de tela. É o erro mais frequente em código gerado por IA.

    Onde guardar a aba ou o filtro que o visitante selecionou?

    Na URL. A documentação do Next.js lista os três ganhos: o endereço fica favoritável e compartilhável, o servidor monta a página já no estado certo e a analítica enxerga filtro e busca sem código extra. A ferramenta de referência em React é o nuqs. Filtro em useState comum some no recarregamento, quebra o botão Voltar e chega vazio na mão de quem recebe o link.

    O que funciona melhor em lista longa: paginação, carregar mais ou rolagem infinita?

    Para lista de produtos, o teste de usabilidade do Baymard Institute aponta o botão de carregar mais com carregamento preguiçoso como a implementação superior. A rolagem infinita clássica serve a feed social, na delimitação do Nielsen Norman Group, e fora dele torna o rodapé inalcançável e prejudica SEO e acessibilidade. O Google Search Central pede URLs únicas e links de âncora reais por baixo da experiência.

    Qual o tamanho mínimo de um alvo de toque?

    A norma exigível é a WCAG 2.2: 24 por 24 pixels CSS no critério 2.5.8, nível AA, com exceções para alvos suficientemente espaçados, links em linha de texto e alvos cujo tamanho é essencial; e 44 por 44 no nível AAA. As recomendações de plataforma sobem a régua: a Apple recomenda 44 pontos no iOS, com mínimo listado de 28, e o Google pede 48 dp no Android. Desenhe pelo conforto de quem toca a tela com uma mão só.

    Por onde começar

    Assista à aula, abra a navegação da peça que o time mantém hoje e aplique três decisões nesta ordem: meça o atraso de hover do menu (a faixa do Baymard é 300 a 500 milissegundos); confira se a navegação primária usa <nav> com links e se o item ativo soma mais de um sinal além da cor; e navegue a lista mais longa do site até o rodapé só com o teclado. O que falhar vira o backlog da semana, com os prompts desta página. O menu Design continua no guia de ícones, ilustrações, animação e geração de imagens, e o restante do portal em landing e formulário e no glossário.

    Os números deste guia vêm das fontes primárias listadas acima e dos capítulos de navegação do curso Frontends com Vibecoding, de Alexandre Caramaschi.

    Guia publicado em e revisado em .