这让我困惑了一段时间。随着UTF-8作为web开发的事实标准的出现,我不确定在哪些情况下应该使用HTML实体,以及在哪些情况下应该只使用UTF-8字符。例如,
分数em破折号( ¾
),&emdash;
)
&
)
请务必阐明这个问题。我会很感激的。
发布于 2009-01-12 19:47:44
如果您的编辑器支持Unicode,则通常不需要使用HTML字符实体。在以下情况下,实体可能非常有用:
代码比相应的空白字符更清晰。<
、&
或HTML等特殊字符发布于 2009-01-12 19:19:29
根据我收到的评论,我对此进行了更深入的研究。目前看来,的最佳实践是放弃使用HTML,而使用实际的UTF8字符代替。列出的原因如下:
对于那些理解字符含义并知道如何键入字符的人来说,
只要页面的编码正确设置为UTF-8,就应该使用实际的字符,而不是HTML实体。我读了几篇关于这个主题的文档,但最有帮助的是:
摘自UTF-8:字符编码的秘密文章:
对于最初使用
-8859-1的应用程序来说,used是一个很好的案例,但当它变得太麻烦而无法支持外语时,就切换到了UTF8。出于用户友好性和可搜索性的考虑,机器人现在实际上将遍历文章并将字符实体转换为相应的真实角色。
那篇文章还给出了一个关于中文编码的很好的例子。这是一个为了懒惰而缩写的例子:
UTF-8:
這兩個字是甚麼意思
超文本标记语言实体
這兩個字是甚麼意思
UTF-8和HTML实体编码对我来说都没有意义,但是至少可以将UTF-8编码识别为一种外语,并且它可以在编辑框中正确呈现。本文接着介绍了以下关于HTML实体编码版本的内容:
对于我们这些真正知道字符实体是什么的人来说是非常不方便的,对于不知道的可怜的用户来说是完全不能理解的!即使是像θ这样稍微更加用户友好、“易懂”的字符实体,也会让那些对学习HTML不感兴趣的用户感到挠头。另一方面,如果他们在编辑框中看到θ,他们就会知道这是一个特殊字符,并对其进行相应处理,即使他们自己不知道如何书写该字符。
正如其他人所指出的,对于保留的XML字符(与号、小于、大于),仍然必须使用HTML实体。
发布于 2009-01-12 19:24:26
实体可能会为你带来一些与那些不能正确理解编码的脑死亡客户端的兼容性。我不相信这包括任何当前的浏览器,但你永远不会知道其他类型的程序可能会击中你。
不过,更有用的是,HTML实体可以保护您免受自己的错误的影响:如果您在服务器上错误配置了某些内容,并且最终使用HTTP头和META
标记提供一个页面,说明它是ISO-8859-1
和UTF-8
,那么至少您的-es将始终有效。
https://stackoverflow.com/questions/436615
复制相似问题