Sobre este problema HTML
O elemento <link> define uma relação entre o documento atual e um recurso externo. É mais frequentemente usado no <head> para carregar folhas de estilo, declarar ícones, especificar URLs canônicos, ou fornecer metadados. A especificação HTML exige que pelo menos um de href, itemprop, property, rel, ou resource esteja presente em qualquer elemento <link>. Uma tag <link> vazia sem nenhum destes atributos não tem propósito definido e é, portanto, inválida.
Este erro de validação ocorre tipicamente em alguns cenários:
-
Um elemento
<link>foi adicionado como placeholder e nunca foi completado. - Atributos foram acidentalmente removidos ou mal escritos durante a edição.
-
Um motor de templates ou ferramenta de construção gerou uma tag
<link>incompleta. -
O atributo
relfoi omitido quando apenashrefera tecnicamente suficiente, mas o programador pretendia especificar uma relação.
Embora os navegadores possam silenciosamente ignorar um elemento <link> vazio, deixá-lo na sua marcação cria desordem, sinaliza código incompleto, e viola o padrão HTML. Manter o seu HTML válido garante comportamento previsível em navegadores e tecnologias assistivas.
Como corrigir
Verifique cada elemento <link> no seu documento e certifique-se de que inclui pelo menos um dos atributos obrigatórios. Na prática, a maioria dos elementos <link> devem ter tanto rel como href:
-
rel— especifica a relação (por exemplo,stylesheet,icon,canonical,preconnect). -
href— fornece o URL do recurso ligado. -
itemprop— usado para marcação microdata. -
property— usado para metadados RDFa ou Open Graph. -
resource— usado em RDFa para identificar um recurso por URI.
Se um elemento <link> não tem propósito válido, remova-o completamente.
Exemplos
Inválido: <link> sem atributos obrigatórios
<link type="text/css">
O atributo type sozinho não satisfaz o requisito. O validador irá sinalizar este elemento.
Inválido: <link> apenas com crossorigin
<link crossorigin="anonymous">
crossorigin não é um dos atributos obrigatórios, portanto isto ainda é inválido.
Válido: folha de estilo com rel e href
<link rel="stylesheet" href="styles.css">
Válido: favicon com rel e href
<link rel="icon" href="/favicon.ico" type="image/x-icon">
Válido: dica preconnect
<link rel="preconnect" href="https://fonts.googleapis.com">
Válido: URL canônico
<link rel="canonical" href="https://example.com/page">
Válido: metadados Open Graph com property
<link property="og:image" href="https://example.com/image.png">
Válido: microdata com itemprop
<link itemprop="url" href="https://example.com">
Exemplo de documento completo
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>My Page</title>
<link rel="stylesheet" href="styles.css">
<link rel="icon" href="/favicon.ico">
<link rel="canonical" href="https://example.com/my-page">
</head>
<body>
<h1>Hello, world!</h1>
</body>
</html>
Cada elemento <link> neste documento tem tanto um atributo rel como um href, tornando-os válidos e comunicando claramente o seu propósito aos navegadores e validadores.
Encontre problemas como este automaticamente
O Rocket Validator analisa milhares de páginas em segundos, detetando problemas HTML em todo o seu site.