Skip to main content
Validação HTML

Aspas “”” no nome do atributo. Causa provável: Aspas correspondentes em falta algures anteriormente.

Sobre este problema HTML

Quando o analisador HTML encontra os atributos de uma tag, espera uma estrutura específica: um nome de atributo, seguido de um sinal de igual, seguido de um valor entre aspas. Se um carácter de aspas aparecer onde o analisador espera um nome de atributo, significa que algo correu mal na sintaxe anteriormente na tag. O validador sinaliza isto como Quote """ in attribute name e sugere que provavelmente faltam aspas correspondentes algures antes.

Esta questão importa porque os navegadores tentarão recuperar do HTML malformado de formas imprevisíveis. Um navegador pode ignorar completamente o atributo, enquanto outro pode fundi-lo com texto adjacente. Isto pode levar a estilos quebrados, funcionalidade em falta, ou elementos que se comportam de forma diferente entre navegadores. Para acessibilidade, atributos malformados podem impedir que as tecnologias assistivas interpretem corretamente a semântica e papéis dos elementos.

Existem várias causas comuns para este erro:

  • Sinal de igual em falta entre um nome de atributo e o seu valor, fazendo com que o analisador trate as aspas de abertura como parte do nome do atributo.
  • Aspas de fecho extra que terminam prematuramente um valor de atributo, deixando aspas subsequentes órfãs.
  • Aspas não escapadas dentro de valores de atributos, que quebram a estrutura de aspas de toda a tag.
  • Erros de copiar-colar que introduzem aspas curvas/inteligentes (" ") ou caracteres de aspas extra.
  • Aspas de fecho em falta num atributo anterior, fazendo com que o analisador consuma atributos subsequentes como parte desse valor.

Exemplos

Sinal de igual em falta

A causa mais comum. Sem o =, o analisador vê class como um atributo e depois encontra " onde espera outro nome de atributo.

Incorreto:

<p class"news">Este parágrafo tem marcação quebrada.</p>

Corrigido:

<p class="news">Este parágrafo tem marcação correta.</p>

Aspas de fecho em falta num atributo anterior

Quando uma aspa fica por fechar, tudo depois dela—incluindo outros atributos—é consumido como parte do valor, até que o analisador eventualmente encontre outra aspa numa posição inesperada.

Incorreto:

<a href="/about class="link">Sobre nós</a>

Aqui, o valor href nunca é fechado. O analisador lê /about class= como o valor href, depois encontra "link" num contexto inesperado.

Corrigido:

<a href="/about" class="link">Sobre nós</a>

Carácter de aspas extra

Uma aspa extra solta quebra o emparelhamento das aspas subsequentes.

Incorreto:

<div id=""main" class="container">Conteúdo</div>

Corrigido:

<div id="main" class="container">Conteúdo</div>

Aspas não escapadas dentro de um valor de atributo

Se o valor do atributo contém ele próprio aspas duplas, deve ser escapado como &quot; ou o atributo deve usar aspas simples em vez disso.

Incorreto:

<input type="text" value="Ela disse "olá"">

Corrigido (usando &quot;):

<input type="text" value="Ela disse &quot;olá&quot;">

Também corrigido (usando aspas simples para o atributo):

<input type="text" value='Ela disse "olá"'>

Aspas inteligentes/curvas de copiar-colar

Processadores de texto e editores de texto rico muitas vezes convertem aspas direitas para aspas curvas, que não são válidas para delimitadores de atributos HTML.

Incorreto:

<p class="highlight">Texto estilizado</p>

Corrigido:

<p class="highlight">Texto estilizado</p>

Como debugar esta questão

Quando vê este erro, o validador geralmente aponta para um número de linha específico, mas a causa raiz pode estar nessa linha ou anteriormente na mesma tag. Siga estes passos:

  1. Vá à linha indicada pelo validador e examine toda a tag.
  2. Verifique cada atributo nesse elemento para sintaxe nome="valor" adequada.
  3. Conte as aspas — cada valor de atributo deve ter exatamente uma aspa de abertura e uma de fecho.
  4. Procure sinais = em falta entre nomes de atributos e os seus valores.
  5. Procure aspas curvas (", ", ', ') e substitua-as por aspas direitas (" ou ').
  6. Se a linha parecer correta, verifique as linhas precedentes — uma aspa não fechada num elemento anterior pode propagar erros para marcação posterior.

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.