A tecla de acesso 'n' salta para outro local na navegação da página. Saltar para o início do conteúdo.

Este documento é uma tradução. Se ocorrerem discrepâncias ou erros, o original em inglês mais recente terá precedência. Os direitos autorais originais pertencem ao W3C, como indicado no final da página.

Tradutor: Maurício Samy Silva

s_gotoW3cHome Internacionalização
 

Declaração de codificação de caracteres em arquivo CSS

Público alvo: Criadores de CSS, gerentes de projetos para web e qualquer um interessado em conhecer como declarar a codificação de caracteres em um arquivo CSS.

Nota: Depois que este documento foi traduzido, alterações foram feitas no documento original em inglês. Consulte o relatório das alterações.

Pergunta

Como eu declaro a codificação de caracteres em um arquivo de folha de estilo em cascata - CSS (Cascading Style Sheets)?

Informações

É sempre uma boa ideia declarar a codificação de caracteres de uma folha de estilos em cascata externa sempre que você usar caracteres de texto não ASCII no arquivo. Por exemplo: é provável que você se utiliza de caracteres não ASCII em nomes de fontes, em valores de propriedades tipo "content", em valores de seletores, etc.

Resposta

Para declarações de estilo incorporadas ao documento a diretiva @charset não é necessária e não deve ser usada. Essa diretiva deve ser usada somente para folhas de estilos linkadas.

Uso de @charset

Para declarar a codificação de caracteres em um arquivo de folha de estilos use a diretiva @charset. A sintaxe é:

@charset "<nome do conjunto de caracteres segundo a IANA>";

Somente uma declaração @charset deve constar de uma folha de estilo externa e deve estar localizada no início do documento. Não deve haver qualquer caracter ou mesmo comentário antes dela. (Contudo, o uso de um byte-order mark é admitido em documentos codificados em um dos conjuntos Unicode.)

O nome deve ser o de um dos conjuntos de caracteres descritos na IANA registry. A IANA registry geralmente estabelece vários nomes para a mesma codificação. Nesses casos você deve usar o nome marcado como preferred. Por exemplo: para definir seu arquivo CSS como codificado em UTF-8 você deve usar:

@charset "UTF-8";

Uso de HTTP

Você pode ainda declarar a codificação de caracteres usando o parâmetro Content-Type do cabeçalho HTTP se você tiver acesso a ele. Para maiores informações sobre como declarar a codificação com uso de HTTP ver Configurando o parâmetro HTTP da codificação de caracteres. Observe a seguir uma linha da resposta HTTP que indica que o arquivo foi codificado em UTF-8.

Content-Type: text/css; charset=UTF-8

Recomendamos que quando for usada a declaração HTTP para codificar caracteres seja usada também a declaração no arquivo da folha de estilos. Essa precaução garante que a codificação será respeitada ainda que o arquivo seja usado localmente ou movido, como acontece nos casos de edição e testes das folhas de estilos.

Havendo conflito a declaração com uso de HTTP prevalece sobre aquela definida no arquivo.

A propósito

A especificação para a HTML 4.01 estabelece que o atributo charset pode ser usado no elemento link com a finalidade de definir a codificação do documento linkado. O uso desse atributo no elemento link é obsoleto segundo a especificação para a HTML5 e, em consequencia você não deve usá-lo. Atualmente o atributo charset não é suportado pelos navegadores e está é outra razão para não usá-lo.

Dê-nos a sua opinião (em inglês).

Subscreva uma alimentação RSS.

Novos recursos

Notícias na página principal

Twitter (Notícias na página principal)

‎@webi18n

Leitura complementar

Autor: Russ Rolfe, Microsoft Corporation. Modificado por: Richard Ishida, W3C. Tradutor: Maurício Samy Silva.

XHTML 1.0 válida!
CSS válido!
Codificado em UTF-8!

Traduzido de conteúdo em inglês datado de 2010-08-07. Última versão traduzida modificada 2010-09-20 08:02 GMT

Para obter o histórico de alterações do documento, faça uma busca por qa-css-charset no blog da i18n.