为什么要使用HTML实体而不是仅将Unicode字符放入HTML?


12

假设我要在HTML文件中添加非平淡的字符;例如“→”。有什么理由让我将其输入为“→” 而不是仅在HTML文件中添加“→”?假设我的HTML文件以某种Unicode格式编码和传输。

Answers:


10

这两个最终陈述是一个很大的假设。

例如,我们有一个Web应用程序,该应用程序使用了AJAX的字面意思-我们使用它来动态加载XML文档。如果XML文档没有正确的content-encoding标头(或根本没有一个标头),则任何Unicode字符(智能引号,长破折号,甚至某些特殊的空格和单词Café)都会使Internet Explorer每次都掉在它的屁股上。AJAX请求只是失败并触发javascript错误。

但是,如果我们在服务器端用其HTML实体替换所有unicode字符,则一切正常。

当然,如果您的文件具有正确的内容标题,那么对于任何现代浏览器来说这都不是问题。


0

但是,如果我们在服务器端用其HTML实体替换所有unicode字符,则一切正常。

假设所有字符都可以用HTML实体代替,但不能。使用正确的标题并尽早发现这些问题(使用错误的标题),而不是在以后出现时将它们弄糊涂。


7
实际上,每个 Unicode字符都有一个适当的HTML实体。
马克·亨德森

哦,我不好,我在想命名实体。:)

0

只是增加了一个很好的公认答案:总体而言,ASCII文件在各种编辑器之间的可移植性要强得多。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.