我应该如何将特殊字符编码到网页中?例如我需要这个符号℃,我只是通过复制和粘贴我现在看到的字符来使用它。这适用于我检查过的桌面浏览器以及 iPad 和 iPhone,但我用于测试的黑莓上没有显示任何内容。有没有标准的最佳实践?
http://www.fileformat.info/info/unicode/char/2103/browsertest.htm
我应该如何将特殊字符编码到网页中?例如我需要这个符号℃,我只是通过复制和粘贴我现在看到的字符来使用它。这适用于我检查过的桌面浏览器以及 iPad 和 iPhone,但我用于测试的黑莓上没有显示任何内容。有没有标准的最佳实践?
http://www.fileformat.info/info/unicode/char/2103/browsertest.htm
正如 Martin 建议的那样,尝试将其替换为°
, 并将字符集设置为 utf-8。
°C
会给你这样的东西:
如果你真的想使用摄氏度字符“℃”,那么复制和粘贴是可以的,只要你的文档是 UTF-8 编码并在 HTTP 标头中声明为这样。使用字符引用℃
同样可以很好地工作,并且可以独立于字符编码工作,但是源代码的可读性要差得多。
黑莓的问题很可能是字体问题。我不知道 Blackberry 上的字体,但字体库可能是有限的。在 HTML 中您无能为力,但您可以使用 CSS,可能与@font face
.
但是很少有任何理由使用摄氏温度。它是一个兼容字符,由于它在东亚文字中的使用而包含在 Unicode 中。Unicode 标准在第 15 章(第 15.2 节,第 497 页)中明确指出:
“在正常使用中,最好用 U+00B0 度符号 + U+0043 拉丁大写字母 c 的序列来表示摄氏度‘°C’,而不是 U+2103 摄氏度。”</p>
度数符号“°”可以通过多种方式输入,包括实体引用`°,但通常最好将其作为字符插入,通过复制和粘贴或其他方式。在 Windows 上,您可以使用 Alt 0176。
警告:一些浏览器可能会将度数符号视为允许在它之后换行,即使没有空格介入,将“°”和后面的“C”放在不同的行上。有不同的方法可以防止这种情况。一个简单有效的方法是这样的:<nobr>42 °C</nobr>
.
我不知道为什么这还没有出现,但你为什么不分别使用℃
(℃) 或℉
(℉) 表示摄氏和华氏!
将元标记添加到您的标题
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
这扩大了您可以使用的字符数量。
如果使用 Java-JSP,对我有用的是在 JSP 页面下面粘贴
<%@ page contentType="text/html; charset=UTF-8" %>