应该在什么时候使用HTML实体?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (155)

这一直困扰着我一段时间。随着UTF-8作为Web开发事实上的标准的出现,我不确定在哪些情况下我应该使用html实体,哪些应该只使用UTF-8字符。

示例:em短划线,&符号等

提问于
用户回答回答于

如果编辑器支持Unicode,则通常不需要使用HTML字符实体。在以下情况下,实体可能有用:

  • 键盘不支持需要键入的字符。例如,许多键盘没有em-dash或版权符号。
  • 编辑器不支持Unicode(几年前很常见,但可能不是今天)。
  • 想在源文件中明确说明正在发生的事情。例如 代码比相应的空格字符更清晰。
  • 需要HTML特殊字符,如<&"
用户回答回答于

根据我收到的意见,我进一步研究了这一点。目前看来,最好的做法是放弃使用HTML实体并改用实际的UTF-8字符。列出的原因如下:

  1. 对于那些理解字符的含义并知道如何输入的人来说,UTF-8编码更易于阅读和编辑。
  2. 对于那些不理解它们的人来说,UTF-8编码与HTML实体编码一样无法理解,但是它们具有渲染为特殊字符的优点,而不是难以理解十进制或十六进制编码。

只要页面的编码设置为UTF-8,应该使用实际的字符而不是HTML实体。我读了几篇关于这个话题的文件,但最有帮助的是:

  • UTF-8:字符编码的秘密
  • 维基百科特殊字符帮助

UTF-8:字符编码的秘密文章:

对于最初使用ISO-8859-1的应用程序来说,维基百科是一个很好的案例研究,但当它变得过于繁琐以至于不能支持外语时,切换到UTF-8。为了用户友好性和可搜索性,机器人现在会实际浏览文章并将角色实体转换为其相应的真实角色

HTML实体

&#36889;&#20841;&#20491;&#23383;&#26159;&#29978;&#40636;&#24847;&#24605;

UTF-8和HTML实体编码对我来说都没有意义,但至少UTF-8编码是可识别的外语,它将在编辑框中正确显示。本文继续说明关于HTML实体编码版本的以下内容:

对于我们这些真正了解角色实体的人来说,这非常不方便,对于那些不喜欢的穷人来说,完全是无法理解的!即使是稍微更加用户友好的“可理解”字符实体,如θ; 会留下对学习HTML格式不感兴趣的用户。另一方面,如果他们在编辑框中看到θ,他们会知道它是一个特殊字符,并相应地对待它,即使他们不知道如何自己编写该字符。

正如其他人所指出的那样,仍然必须将HTML实体用于保留的XML字符(和号,小于,大于)。

扫码关注云+社区

领取腾讯云代金券