Skip to main content
Validação HTML

Tag de fecho “li” encontrada, mas existem elementos em aberto.

Sobre este problema HTML

Quando o parser HTML encontra uma tag de fecho </li>, espera que todos os elementos aninhados dentro desse item de lista já estejam fechados. Se algum elemento filho permanecer em aberto, o navegador tem de adivinhar onde o fechar, o que pode levar a uma estrutura DOM inesperada. Este erro ocorre tipicamente quando uma tag de fecho é acidentalmente omitida, mal escrita, ou colocada na ordem errada.

Isto é importante por várias razões. Primeiro, os navegadores podem interpretar a estrutura pretendida de forma diferente, causando renderização inconsistente entre plataformas. Segundo, tecnologias assistivas como leitores de ecrã dependem de um DOM bem formado para transmitir o conteúdo corretamente — elementos não fechados podem confundir a ordem de leitura ou o agrupamento do conteúdo. Terceiro, elementos não fechados podem causar outros erros de validação em cascata, tornando mais difícil identificar os problemas reais na sua marcação.

Causas comuns deste erro incluem:

  • Esquecer-se de fechar um elemento inline como <span>, <a>, <strong>, ou <em> dentro de um item de lista.
  • Esquecer-se de fechar um elemento de nível de bloco como <div> ou <p> dentro de um item de lista.
  • Aninhar elementos na ordem errada, para que as tags de fecho não correspondam às suas tags de abertura.
  • Erros tipográficos nas tags de fecho (p.ex., </sapn> em vez de </span>).

Para corrigir o problema, localize o <li> mencionado no erro e verifique todos os elementos abertos dentro dele. Certifique-se de que cada um tem uma tag de fecho correspondente e corretamente escrita, e que são fechados na ordem inversa à que foram abertos (último aberto, primeiro fechado).

Exemplos

Tag de fecho em falta num elemento inline

Inválido: O <span> nunca é fechado antes do </li>.

<ul>
  <li>
    <span>Texto de exemplo
  </li>
</ul>

Válido: O <span> está adequadamente fechado.

<ul>
  <li>
    <span>Texto de exemplo</span>
  </li>
</ul>

Tag de fecho em falta numa ligação

Inválido: O elemento <a> fica em aberto.

<ul>
  <li>
    <a href="/about">Sobre nós
  </li>
  <li>
    <a href="/contact">Contacto</a>
  </li>
</ul>

Válido: Ambos os elementos <a> são fechados antes do seu </li> pai.

<ul>
  <li>
    <a href="/about">Sobre nós</a>
  </li>
  <li>
    <a href="/contact">Contacto</a>
  </li>
</ul>

Múltiples elementos aninhados não fechados

Inválido: Tanto <strong> como <a> ficam em aberto dentro do <li>.

<ol>
  <li>
    <a href="/sale"><strong>Grande saldo
  </li>
</ol>

Válido: Os elementos aninhados são fechados por ordem inversa (mais interno primeiro).

<ol>
  <li>
    <a href="/sale"><strong>Grande saldo</strong></a>
  </li>
</ol>

Tag de fecho mal escrita

Inválido: A tag de fecho </sapn> não corresponde a <span>, portanto o <span> permanece em aberto.

<ul>
  <li>
    <span>Item um</sapn>
  </li>
</ul>

Válido: A tag de fecho está corretamente escrita.

<ul>
  <li>
    <span>Item um</span>
  </li>
</ul>

Tags de fecho ordenadas incorretamente

Inválido: As tags </em> e </strong> são fechadas na ordem errada, deixando <em> efetivamente não fechado quando </strong> é encontrado.

<ul>
  <li>
    <strong><em>Nota importante</strong></em>
  </li>
</ul>

Válido: As tags de fecho estão na ordem reversa correta.

<ul>
  <li>
    <strong><em>Nota importante</em></strong>
  </li>
</ul>

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.