all*_*lar 112 html xhtml html-entities
这让我困惑了一段时间.随着UTF-8作为Web开发的事实标准的出现,我不确定在哪种情况下我应该使用html实体,而我应该使用UTF-8字符.
示例:em dash,&ersand等.
请详细说明这个问题.我们将不胜感激.
Wil*_*del 113
根据我收到的评论,我进一步研究了这一点.似乎目前最好的做法是放弃使用HTML实体并使用实际的UTF-8字符.列出的理由如下:
只要您的页面编码正确设置为UTF-8,就应该使用实际字符而不是HTML实体.我阅读了几个关于这个主题的文档,但最有帮助的是:
来自UTF-8:字符编码的秘密文章:
维基百科是一个很好的案例研究,用于最初使用ISO-8859-1的应用程序,但是当它变得非常麻烦而不支持外语时转换为UTF-8.为了用户友好性和可搜索性,机器人现在将实际浏览文章并将字符实体转换为其对应的真实字符.
那篇文章也给出了一个涉及中文编码的好例子.以下是懒惰的缩写示例:
UTF-8:
?????????
HTML实体:
這兩個字是甚麼意思
UTF-8和HTML实体编码对我来说都没有意义,但至少UTF-8编码可以识别为外语,并且它将在编辑框中正确呈现.本文继续讨论关于HTML实体编码版本的以下内容:
对于我们这些真正了解角色实体的人来说非常不方便,对于那些不熟悉这些角色实体的穷人来说,完全无法理解!即使是更加用户友好,"可理解"的角色实体,如θ 将让那些对学习HTML不感兴趣的用户摸不着头脑.另一方面,如果他们在编辑框中看到θ,他们就会知道它是一个特殊的角色,并相应地对待它,即使他们不知道如何自己编写该角色.
正如其他人所指出的那样,您仍然必须将HTML实体用于保留的XML字符(&符号,小于号,大于号).
Jac*_*esB 75
如果编辑器支持Unicode,则通常不需要使用HTML字符实体.在以下情况下,实体非常有用:
代码比相应的空格字符更清晰.<
,&
或"
.实体可能会为您购买一些与无法正确理解编码的脑死亡客户端的兼容性。我不认为这包括任何当前的浏览器,但你永远不知道还有哪些其他类型的程序可能会攻击你。
不过,更有用的是 HTML 实体可以保护您免受自己的错误的影响:如果您在服务器上错误配置了某些内容,并且最终提供的页面带有一个 HTTP 标头ISO-8859-1
和一个META
标签UTF-8
,至少您的 es永远会起作用。
我不会将UTF-8用于容易在视觉上混淆的字符.例如,很难将emdash与减号区分开,尤其是与空间区分不间断的空间.对于这些字符,绝对使用实体.
对于易于理解的字符(例如上面的中文示例),如果您愿意,请继续使用UTF-8.
我个人用utf-8做了很长时间,然而,在一个html页面中,你总是需要将&符号(&),大于(>)和小于(<)字符转换为它们的等效实体,& ;, > 和<
此外,如果您打算使用utf-8文本进行一些编程,还有一些需要注意的事项.