24

HTML 实体仍然有用还是我应该简单地创建 UTF-8 编码的 html 文档?请解释原因。

4

3 回答 3

30

如果编码设置正确(并且文档保存为 UTF-8),您应该能够只使用字符。来自 W3C:

使用 UTF-8 之类的编码意味着您可以避免大多数转义,而只使用字符。

http://www.w3.org/International/questions/qa-escapes

但是,对于大于/小于等特殊字符,您仍然需要使用实体。

于 2009-02-06T13:30:26.510 回答
9

实体在程序源代码文件中(在输出 HTML 的程序中)很有用。许多编码标准说,文件应该是纯 ASCII。当然,实际包含文本内容的文件除外——例如带有翻译的 .po 文件。

当您的文件很长,其中几乎没有非 ASCII 字符时,很容易以错误的编码保存文件,而不会注意到您的字符被搞砸了。

使用非 ASCII 字符的另一个好理由是外观相似的字符。你能看出下面两行代码的区别吗:

print "<title>" + pagename + " – " + sitename + "</title>";
print "<title>" + pagename + " - " + sitename + "</title>";

但是通过使用实体,区别是显而易见的:

print "<title>" + pagename + " &ndash; " + sitename + "</title>";
print "<title>" + pagename + " - " + sitename + "</title>";

但是在程序源代码文件之外,UTF-8 显然是要走的路。

于 2009-02-06T14:30:39.773 回答
6

根据我的经验,只要您的数据确实是 UTF-8 并且您正确地告诉浏览器它是 UTF-8,那么您就不需要使用实体。除了 >, <, " 之类的东西 当然。

于 2009-02-06T13:31:06.600 回答