<meta>

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

O elemento **HTML <meta> **define qualquer informação de metadados que não podem ser definidos por outros elementos HTML. (<base>, <link>, <script>, <style> ou <title>).

Categoria de conteúdo Conteúdo de metadado. Se o itemprop atributo estiver presente: flow content, phrasing content.
Conteúdo permitido Nenhum, é um elemento vazio.
Omissão de tag Como é um elemento vazio, a marcação inicial deve estar presente e a de fechamento não.
Elementos pai permitidos <meta charset>, <meta http-equiv>: um elemento <head>. Se o http-equiv não for uma declaração de codificação, ele pode estar dentro de um elemento <noscript>, dentro de um elemento <head>.
Papéis ARIA permitid Nenhum
Interface DOM HTMLMetaElement

Atributos

Esse elemento inclui os atributos globais.

Nota: o atributo global name tem um significado específico para o elemento <meta>, e o atributo itemprop não deve ser definido no mesmo elemento<meta> que tem algum desses atributos existentes: name, http-equiv ou charset.

charset

Este atributo define a codificação de caracteres usada na página. Pode ser substituído localmente usando o atributo lang em qualquer elemento. Esse atributo é literalmente uma amarra e deve ser um dos MIME names preferidos para uma codificação de caracteres como definido pela IANA (defined by the IANA). Embora o padrão não solicite uma codificação específica, ele dá algumas sugestões:

  • Autores são encorajados a usar UTF-8.
  • Autores não devem usar codificações incompatíveis com ASCII ( isto é, aqueles que não mapeiam os pontos de código de 8 bits 0x20 a 0x7E para os pontos de código Unicode 0x0020 a 0x007E), pois representam um risco de segurança: navegadores que não os suportam podem interpretar conteúdo maligno como Elementos HTML. Esse é o caso de pelo menos os seguintes caracteres: JIS_C6226-1983, JIS_X0212-1990, HZ-GB-2312, JOHAB, a família ISO-2022 e a família EBCDIC.
  • Autores não devem usar CESU-8, UTF-7, BOCU-1 e SCSU, also falling in that category and not intended to be used on the web. Cross-scripting attacks with some of these encodings have been documented.
  • Autores não devem usar UTF-32 pois nem todos algorítimos de codificação HTML5 conseguem distingui-lo do UTF-16.

Nota:

  • O conjunto de caracteres declarado deve corresponder ao da página. Não há motivo válido para declarar um conjunto de caracteres imprecisos.
  • Esse elemento <meta> deve estar dentro do elemento <head> e dentro dos primeiros 1024 bytes da página, pois alguns navegadores só olham para esses primeiros bytes antes de escolher um caractere definido para a página.
  • Esse elemento <meta> é apenas uma parte do algoritmo para determinar o conjunto de caracteres de uma página que os navegadores aplicam. O cabeçalho HTTP Content-Type e quaisquer elementos da BOM têm precedência sobre esse elemento.
  • É uma boa prática, e altamente recomendável, definir o conjunto de caracteres usando este atributo. Se nenhum conjunto de caracteres estiver definido para uma página, várias técnicas de scripts cruzados poderão prejudicar o usuário da página, como a técnica de cross-scripting de fallback UTF-7. Sempre definindo esta meta irá proteger contra esses riscos.
  • Esse elemento <meta> é um sinônimo para o pre-HTML5 <meta http-equiv="Content-Type" content="text/html; charset=IANAcharset"> onde o atributo IANAcharset corresponde ao valor equivalente de charset. Essa sintaxe ainda é permitida, embora obsoleta e não mais recomendada.
content

Esse atributo fornece o valor associado ao atributo http-equiv ou name, dependendo do contexto.

http-equiv

Este enumerado atributo define a pragma isso pode alterar o comportamento de servers e user-agents. o valor do pragma é definido usando content e pode ser um dos seguintes:

"content-language"

este pragma define a linguagem default da página

Nota: não use este pragma, ele esta obsoleto. use o atributo global lang no <html> ao invés deste.

"Content-Security-Policy"

Este valor permite os administradores do web site definam uma política de conteúdo para a página atual. Com algumas exceções, politicas de conteúdo envolvem especificar origens de servidores e endpoints de scripts permitidos, isso ajuda na defesa de cross-server scripting attacks.

"content-type"

Esse atributo define o MIME type e o conjunto de caracteres do documento. Isso segue a mesma sintaxe como o HTTP content-type entity-header field, mas isto esta dentro de um elemento HTML, a maioria dos valores não é possível. Sendo assim a sintaxe válida para este conteúdo é a literal string 'text/html' eventualmente seguido por estes caracteres com a seguinte sintaxe: '; charset=IANAcharset' onde IANAcharset é o MIME preferido nome para um conjunto de caracteres como definido pela IANA.

Nota:

  • Nao use esta pragma ela esta obsoleta. use charset atributo <meta> element instead.
  • como o <meta> pode nao ser usado para mudar o tipo de documento no XHTML, ou em um documento de HTML5 seguindo uma syntax de XHTML, nunca marque MIME type para um XHTML MIME type desta forma. isso sera incoerente.
  • somente um documento HTML pode usar o content-type, então a maioria disto é redundante: isso porque esta obsoleto e trocado pelo atributo charset.
"default-style"

Este pragma preferencia de stylesheet a ser usado na página. o atributo content deve conter o title de um <link> elemento de quem href atributo link um CSS stylesheet, ou um title de um elemento <style> do qual contem um CSS stylesheet.

"refresh"

este pragma especifica:

  • o numero de segundos até a página ser recarregada, se o atributo content contém apenas um número inteiro não negativo;
  • o número de segundos até a página ser redirecionada para outro lugar, se o atributo content contém um inteiro não negativo seguido de uma string ';url=' e uma URL válida.

este pragma define um cookie para a página. este conteúdo deve seguir a sintaxe definida em IETF HTTP Cookie Specification.

Nota: não use este pragma está obsoleto. Use HTTP header set-cookie instead.

name

Este atributo define o nome do document-level metadata. Isso não deve ser marcado se um dos atributos itemprop, http-equiv ou charset já estiver preparado. este document-level metadata name é associado a um valor, contido pelo atributo content. os possíveis valores para o elemento name são, com seu valor associado, guardado via content attribute:

  • application-name, define o nome da aplicação que esta rodando na página;

    Nota:

    • Browsers podem usar isso para identificar a aplicação. isso é diferente do elemento <title>, que geralmente constituí no nome da aplicação, mas também contém informações específicas como o nome do documento ou status;
    • Webpages simples não deveriam definir application-name meta.
  • author, definindo, em formato livre, o nome do author do documento;

  • description, contém uma curta e precisa descrição do conteúdo da página. vários browsers, como o Firefox e o Opera, usam este meta como descrição padrão da página quando é marcada.

  • generator, contendo, em um formato livre, o identificador do software que gerou a página;

  • keywords, contendo, como strings separadas por vírgula, palavras relevantes associadas ao conteúdo da página;

  • referrer Experimental controlando o conteúdo de um HTTP Referer HTTP header anexado a qualquer pedido enviado deste documento:

    no-referrer não envia um HTTP Referer header.
    origin envia a origin de um documento.
    no-referrer-when-downgrade Envia a origem como referenciador para um destino prioritariamente tão seguro (https-> https), mas não envie um referenciador para um destino menos seguro (https-> http). Este é o comportamento padrão.
    origin-when-crossorigin Envia uma URL completa (sem parâmetros) ao executar uma solicitação de mesma origem, mas envie apenas a origem do documento para outros casos.
    unsafe-URL Envia um URL completo (sem parâmetros) ao executar uma solicitação de mesma origem ou origem cruzada.

    Nota: alguns browsers suportam keywords always, default, e never para referenciar. estes valores estão descontinuados.

    Nota: dinamicamente inseridos <meta name="referrer"> (por document.write ou appendChild) cria um nao-determinismo quando isso vem para enviar referências ou não. Note também quando muitas politicas conflitantes são definidas, o No-referrer politia é aplicada.

o atributo também pode ter um valor retirado de uma extensa lista definida em WHATWG Wiki MetaExtensions page. Embora nenhum tenha sido formalmente aceito ainda, alguns nomes comumente usados estão entre as propostas:

  • creator, definindo, em um formato livre, o nome do criador do documento. Note que também pode ser o nome de uma instituição. se há mais de uma, vários elementos <meta> podem ser usados;

  • googlebot, é um sinônimo de robots, mas só é seguido por Googlebot, o indexador crawler do Google;

  • publisher, definido, em um formato livre, o nome do editor do documento. Note que também pode ser o nome de uma instituição;

  • robots, definindo o comportamento que crawlers devem ter com a página. É separado por vírgula a lista de valores seguintes:

    Value Description Used by
    index permite o robô indexar uma página All
    noindex previne o robô de indexar uma página All
    follow permite o robô a seguir os links da página All
    nofollow previne o robô a seguir os links da página All
    noodp previne o uso de descrição Open Directory Project, caso existam, como descrição da página o resultado na ferramenta de busca. Google, Yahoo, Bing
    noarchive previne a ferramenta de busca pecar o conteúdo da página Google, Yahoo
    nosnippet Impede a exibição de qualquer descrição da página na página de resultados do mecanismo de pesquisa Google
    noimageindex previne esta página de aparecer como referencia de alguma imagem indexada Google
    nocache sinônimo de noarchive Bing

    Nota:

    • Somente robôs cooperativos seguirão as regras definidas pelo nome do robô. Não espere manter as colheitadeiras de e-mail à distância com isso.
    • O robô ainda precisa acessar a página para ler o valor meta. Se você quiser mantê-los sob controle, por exemplo, para evitar o consumo de largura de banda, use um arquivo robots.txt (ou em complemento).
    • Se você quiser remover a página de um índice, a alteração do meta para noindex funcionará, mas somente quando o robô visitar a página novamente. Verifique se o arquivo robots.txt não está impedindo essas visitas. Alguns mecanismos de busca possuem ferramentas para desenvolvedores, permitindo uma remoção rápida de algumas páginas.
    • Alguns valores possíveis são mutuamente exclusivos, como usar index e noindex, ou follow e nofollow, ao mesmo tempo. Nestes casos, o comportamento do robô é indefinido e pode variar de um para o outro. Então evite esses casos.
    • Alguns robôs rastreadores de mecanismos de pesquisa, como os do Google, Yahoo Search ou Bing, suportam os mesmos valores em uma diretiva HTTP, X-Robot-Tags: isso permite que eles usem esses pragma em documentos não HTML, como imagens
  • slurp, qual é um sinônimo de robots, mas somente seguido por Slurp, o indexador crawler para Yahoo Search;

Finalmente, alguns nomes estão em uso comum, embora não estejam sendo padronizados:

  • viewport, que dá dicas sobre o tamanho inicial do viewport. Este pragma é usado apenas por vários dispositivos móveis.

    Value Possible values Description
    width um numero inteiro positivo ou o literal device-width define a largura em pixel de um viewport
    height um numero inteiro positivo ou o literal device-height define a altura em pixel de um viewport
    initial-scale um numero positivo entre 0.0 e 10.0 define a relação entre a largura do dispositivo (largura do dispositivo no modo retrato ou altura do dispositivo no modo paisagem) e o tamanho da janela de visualização.
    maximum-scale um numero positivo entre 0.0 e 10.0 define o valor máximo de zoom; deve ser maior ou igual ao minimum-scale ou o comportamento sera indeterminado.
    minimum-scale um numero positivo entre 0.0 e 10.0 define o valor mínimo do zoom; deve ser menor ou igual ao maximum-scale ou o comportamento sera indeterminado
    user-scalable um valor booleano (yes ou no) se setado no, o usuário não poderá usar zoom na página. o valor padrão é yes.

    Nota:

    • Embora não seja padronizado, esse atributo é usado por diferentes navegadores móveis, como o Safari Mobile, o Firefox para celular ou o Opera Mobile.
    • Os valores padrão podem mudar de um dispositivo e navegador para outro.
    • Para aprender sobre esse pragma no Firefox para celular, veja este artigo.
scheme

Este atributo define o esquema no qual os metadados são descritos. Um esquema é um contexto que leva às interpretações corretas dos content valores, como um formato.

Nota: Não use este atributo pois esta obsoleto.Não há substituto para isso, pois não houve uso real para isso. Omitir completamente.

Notes

Dependendo do conjunto escolhido, o tipo de metadata pode ser uma das seguintes:

  • se name é definido, isto é document-level metadata, aplicando para a página inteira.

  • se http-equiv é definido, isto é um pragma diretiva, i.e. normalmente informação dada pelo web server sobre como a página web deve ser entregue.

  • se charset é definido, isto é uma declaração de charset, i.e. o charset usado para o formulário serializado da página da Web

  • se itemprop é definido, isto é user-defined metadata, transparente para o user-agent, pois a semântica dos metadados é específica do usuário. Experimental

Exemplos

html
<!-- In HTML5 -->
<meta charset="utf-8" />

<!-- redireciona a página depois de 3 segundos -->
<meta http-equiv="refresh" content="3;url=https://www.mozilla.org" />

Especificações

Specification
HTML Standard
# the-meta-element

Compatibilidade com navegadores

BCD tables only load in the browser

See also