Não fornece conteúdo substituto quando o JavaScript não está disponível

O Aprimoramento progressivo é uma estratégia de desenvolvimento da Web que garante que seu site seja acessível ao maior público possível. O princípio básico é que o conteúdo básico e a funcionalidade da página devem depender apenas das tecnologias da Web mais fundamentais. Experiências aprimoradas, como estilo sofisticado usando CSS ou interatividade usando JavaScript, podem ser colocadas em camadas para navegadores compatíveis com essas tecnologias. No entanto, o conteúdo básico e a funcionalidade da página não devem depender de CSS ou JavaScript.

Como a auditoria de conteúdo substituto do Lighthouse falha

O Lighthouse sinaliza páginas que não têm algum conteúdo quando o JavaScript não está disponível:

Auditoria do Lighthouse mostrando que a página não tem conteúdo quando o JS está indisponível

O Lighthouse desativa o JavaScript na página e inspeciona o HTML dela. Se o HTML estiver vazio, a auditoria vai falhar.

Como garantir que sua página tenha conteúdo sem JavaScript

O aprimoramento progressivo é um assunto amplo e polêmico. Um deles afirma que, para aderir à estratégia de aprimoramento progressivo, as páginas precisam ser divididas em camadas para que o conteúdo básico e a funcionalidade da página exijam apenas HTML. Acesse Progressive Enhancement: o que é e como usar (em inglês) da Smashing Magazine para ver um exemplo dessa abordagem.

Outro grupo acredita que essa abordagem rígida é inviável ou desnecessária para muitos aplicativos da Web modernos e de grande escala e sugere o uso do CSS de caminho crítico inline no documento <head> para estilos de página absolutamente essenciais.

Considerando essas considerações, essa auditoria do Lighthouse faz uma verificação simples para garantir que sua página não fique em branco quando o JavaScript estiver desativado. O quão estritamente o app adere ao aprimoramento progressivo é um assunto controverso, mas há um consenso geral de que todas as páginas precisam exibir pelo menos algumas informações quando o JavaScript está desativado, mesmo que o conteúdo seja apenas um alerta para o usuário de que o JavaScript é necessário para usar a página.

Para páginas que absolutamente precisam depender de JavaScript, uma abordagem é usar um elemento <noscript> para alertar o usuário de que o JavaScript é necessário para a página. Isso é melhor do que uma página em branco porque ela deixa os usuários na dúvida sobre se há um problema com a página, com os navegadores ou com os computadores.

Para conferir a aparência e o desempenho do seu site quando o JavaScript está desativado, use o recurso Desativar JavaScript do Chrome DevTools.

Recursos