HTML实体:何时使用十进制与十六进制

 rain 发布于 2023-02-13 10:20

对于HTML实体何时使用十进制与十六进制表示法有一个很好的经验法则吗?

例如,非破坏连字符以十进制形式写入,并以十六进制形式写入.

这个答案说十六进制用于Unicode; 这是否意味着如果您在文档中使用标记,则应使用hex

偶尔,我会注意到实体字符被错误地呈现而不是它们代表的实体 - 例如,&在电子邮件主题行或RSS标题中出现(而不是&符号).十六进制或十进制是否更好以避免这种情况?

最后一个考虑因素:使用十六进制或十进制可以影响角色的渲染清晰度(清晰度)吗?

2 个回答
  • 经验法则是:使用您喜欢的任何一种,但更喜欢十六进制.☺

    浏览器支持没有区别,也没有区别(支持十进制引用的最后一个浏览器只在20世纪90年代死亡).

    正如@AlexW所描述的,由于编写字符代码标准的方式,十六进制引用比十进制更自然.但是如果您发现十进制参考更方便,请使用它们.

    这个问题与meta标签和字符编码无关.将字符引用引入HTML的主要原因是它们允许您完全独立于文档的编码输入字符.这包括在使用的编码中根本无法直接写入的字符.多亏了它们,您可以输入任何Unicode字符,即使字符编码是ASCII或其他一些有限的编码,如ISO-8859-1.

    在过去,通常建议使用命名引用(或"实体引用",因为它们在经典HTML中正式调用),如果可能的话,因为类似于Ω在字面上向用户显示时的引用比像Ω或的参考Ω.就网络浏览器而言,这已经十多年没有关系了.但是,例如电子邮件客户端可能是一种愚蠢的,在这方面不发达的H ^ H ^ H ^ H ^ H ^ H ^ H ^ H ^ H. 它们可能例如在消息列表中显示引用,即使它们在查看消息时可以正确地解释它们.但似乎没有任何一致的行为,你可以指望.

    2023-02-13 10:23 回答
  • 总体

    HTML(和XML)提供了三种编码特殊字符的方法:数字十六进制&,数字十进制&(又名"字符引用")和命名&(又称"实体引用").几十年来,它们一直保持同样有效并得到所有主流浏览器的全力支持.它们适用于任何编码,但始终使用Unicode集(与ASCII,ISO拉丁语和Windows拉丁语兼容,减去代码128-159)进行渲染.

    所以这取决于个人偏好,有一些值得注意的事情.

    必要性

    如果meta在HTML中添加正确的charset 标记,则根本不需要对特殊字符进行编码(除非& < > " ',或者更常见的是,只是& <在松散的文本中).例外是想要编码指定编码中不存在的字符.但是如果你使用UTF-8,你可以用Unicode代表任何东西.

    简短

    对于索引10以下的任何字符,十进制都会更短.标签是相对的&#9;,&#x09;因此对于pre包含大量TSV数据的标签可能是值得的.

    便于使用

    命名引用是最容易使用和记忆的,特别是对于不同背景和技能集的开发人员共享的代码.&lt;比直觉更直观&#x3c;.至于其他人对相关性的评论,它们实际上仍然作为W3C标准的一部分得到了完全支持,甚至已经针对HTML5进行了扩展.

    最佳实践

    使用命名或十进制引用可能不是最佳通用实践,因为名称仅限英语,并且HTML是唯一的(即使XML缺少命名引用,减去"五大").大多数编程语言和字符表都使用十六进制编码,因此从长远来看,当您保持一致时,它会使事情变得更容易,更便携.虽然对于小型项目或特殊情况,但这可能并不重要.

    更多信息:http://xmlnews.org/docs/xml-basics.html#references

    2023-02-13 10:23 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有