Skip to main content
Validação HTML

Valor incorreto “” para o atributo “href” no elemento “link”: deve ser não vazio.

Sobre este problema HTML

O elemento <link> é usado para definir relações entre o documento atual e recursos externos — mais comumente folhas de estilo, ícones e recursos pré-carregados. O atributo href especifica a URL desse recurso externo, e é o propósito central do elemento. Um atributo href vazio torna o elemento <link> sem sentido porque não há recurso para buscar ou referenciar.

Por que isto é um problema

Conformidade com padrões: A especificação HTML requer que o atributo href no <link> seja uma URL válida e não vazia. Uma string vazia não se qualifica como uma URL válida, pelo que o validador sinaliza isto como um erro.

Comportamento inesperado do navegador: Quando um navegador encontra um href vazio, pode resolvê-lo relativamente à URL do documento atual. Isto significa que o navegador pode acabar por fazer um pedido HTTP desnecessário para a própria página atual, interpretando a resposta HTML como uma folha de estilo ou outro recurso. Isto desperdiça largura de banda, pode atrasar o carregamento da página e pode desencadear problemas de renderização inesperados.

Acessibilidade e semântica: Um href vazio não fornece informações úteis aos navegadores, leitores de ecrã ou outros agentes de utilizador sobre a relação entre o documento e um recurso externo. Adiciona ruído ao DOM sem contribuir com nada funcional.

Como corrigir

  1. Forneça uma URL válida: Se o elemento <link> pretende referenciar um recurso, defina href para a URL correta desse recurso.
  2. Remova o elemento: Se não é necessário nenhum recurso, remova todo o elemento <link> em vez de o deixar com um href vazio.
  3. Verifique a renderização dinâmica: Este problema ocorre frequentemente quando um motor de templates ou CMS produz um elemento <link> com uma variável que resolve para uma string vazia. Adicione uma verificação condicional para que o elemento apenas seja renderizado quando uma URL válida estiver disponível.

Exemplos

❌ Incorreto: atributo href vazio

<link rel="stylesheet" href="">

Isto desencadeia o erro de validação porque href está vazio.

❌ Incorreto: href vazio de um template

<!-- Uma variável de template resolveu para uma string vazia -->

<link rel="icon" type="image/png" href="">

✅ Correto: href válido apontando para um recurso

<link rel="stylesheet" href="/css/main.css">

✅ Correto: href válido para um favicon

<link rel="icon" type="image/png" href="/images/favicon.png">

✅ Correto: remover o elemento se não for necessário nenhum recurso

<!-- Simplesmente omita o elemento <link> completamente -->

✅ Correto: renderização condicional num template

Se está a usar uma linguagem de templates, envolva o <link> numa condicional para que apenas seja renderizado quando uma URL estiver disponível. Por exemplo, num template estilo Jinja2:

{% if stylesheet_url %}
  <link rel="stylesheet" href="{{ stylesheet_url }}">
{% endif %}

Isto garante que o elemento <link> nunca é produzido com um href vazio.

Encontre problemas como este automaticamente

O Rocket Validator analisa milhares de páginas em segundos, detetando problemas HTML em todo o seu site.

Ajude-nos a melhorar os nossos guias

Este guia foi útil?

Pronto para validar os seus sites?
Comece o seu teste gratuito hoje.