Como devo codificar caracteres especiais em páginas da web? Por exemplo, eu preciso deste símbolo ℃, que usei apenas copiando e colando o caractere como posso vê-lo agora. Isso funcionou para os navegadores de desktop que verifiquei e também no iPad e iPhone, mas nada é exibido em um Blackberry que usei para teste. Existe uma prática recomendada padrão para isso?
http://www.fileformat.info/info/unicode/char/2103/browsertest.htm
Respostas:
Tente substituí-lo por
°
e também definir o conjunto de caracteres para utf-8, como Martin sugere.°C
obterá algo como isto:fonte
Se você realmente deseja usar o caractere DEGREE CELSIUS “℃”, então copiar e colar está OK, desde que seu documento seja codificado em UTF-8 e declarado como tal nos cabeçalhos HTTP. Usar a referência de caractere
℃
funcionaria igualmente bem e funcionaria independentemente da codificação de caractere, mas a fonte seria muito menos legível.O problema com o Blackberry é provavelmente um problema de fonte. Não sei sobre fontes no Blackberry, mas o repertório de fontes pode ser limitado. Não há nada que você possa fazer sobre isso em HTML, mas você pode usar CSS, possivelmente com
@font face
.Mas raramente há qualquer razão para usar o DEGREE CELSIUS. É um caractere de compatibilidade, incluído no Unicode devido ao seu uso na escrita do Leste Asiático. O Padrão Unicode diz explicitamente no Capítulo 15 (seção 15.2, página 497):
“Em uso normal, é melhor representar graus Celsius“ ° C ”com uma sequência de U + 00B0 sinal de grau + U + 0043 letra latina c maiúscula, em vez de U + 2103 graus Celsius.”
O sinal de grau “°” pode ser inserido de várias maneiras, incluindo a referência de entidade `°, mas normalmente é melhor inseri-lo como um caractere, por meio de copiar e colar ou de outra forma. No Windows, você pode usar Alt 0176.
Advertência: Alguns navegadores podem tratar o sinal de grau como permitindo uma quebra de linha após ele, mesmo quando nenhum espaço intervém, colocando “°” e o seguinte “C” em linhas separadas. Existem diferentes maneiras de evitar isso . Um método simples e eficaz é esta:
<nobr>42 °C</nobr>
.fonte
Usando sup na letra "o" e um "C" maiúsculo
<sup>o</sup>C
Deve funcionar em todos os navegadores e IE6 +
fonte
Não sei por que isso ainda não surgiu, mas por que você não usa
℃
(℃) ou℉
(℉) para Celsius e Fahrenheit respectivamente!fonte
Adicione uma metatag ao seu cabeçalho
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
Isso expande a quantidade de caracteres que você pode usar.
fonte
<meta charset="utf-8"/>
eu acredito.°
estava sendo renderizado como°
em umaimg
tag alt onde a imagem de origem estava ausente.fonte
Se estiver usando Java-JSP, o que funcionou para mim é colar abaixo na página JSP
<%@ page contentType="text/html; charset=UTF-8" %>
fonte