【问题标题】:Is it necessary to use — and – in XHTML or HTML5?有必要在 XHTML 或 HTML5 中使用 — 和 — 吗?
【发布时间】:2013-05-09 04:14:26
【问题描述】:

It seems that it is best to use the & escape,而不是简单地输入与号 (&)。

但是,在 WordPress 等 CMS 或手动硬编码网站上撰写博客文章时,我们是否应该将 X/HTML character entity references 用于破折号和其他常见印刷字符?

例如:

–en dash (–)

—em dash (—)

如果我们不这样做会有什么风险?

为什么hyphen (-) 从来不写成-,而是直接从键盘输入HTML? (假设它是连字符,而不是minus sign。)

【问题讨论】:

标签: character-encoding escaping character special-characters html-escape-characters


【解决方案1】:

W3C 发布了关于何时使用和何时不使用字符转义的官方回复,您可以find here。由于他们也是负责 HTML 规范的小组,我认为最好听从他们的建议。

来自"When to Use Escapes"部分

语法字符。三个字符应始终作为转义出现在内容中,这样它们就不会与标记的语法交互。这些是所有基于 XML 和 HTML 的文档语言的一部分。

  • < (

  • >(>)

  • & (&)

他们还提到使用当前编码可能不支持的字符。

来自"When Not to Use Escapes"部分

几乎总是最好使用允许您以正常形式表示字符的编码,而不是使用字符实体引用或 NCR。

使用转义会使源代码难以阅读和维护,并且还会显着增加文件大小。

http://www.w3.org/International/questions/qa-escapes

【讨论】:

  • 谢谢,很好的答案。但是&emdash; 不是“逃避”,而是character entity reference
  • @Baumr 如果我理解正确,这两者是同义词。当 W3C 在引用的文章中引用字符转义时,它们表示字符实体引用。
  • 值得一提的是,根据 HTML 规范,<div> ></div> 之类的东西是合法的。 (但这并不意味着您不应该遵守这些建议)。
  • 仅供参考,PhpStorm 编辑器将大多数实体显示为其视觉等效项以进行显示。它们被突出显示,您可以通过将鼠标悬停在它们上来查看实际的实体代码。所以阅读或维护包含实体的源代码并不难。
【解决方案2】:

这些实体可以帮助您(作者)处理普通键盘上通常无法输入的字符。 (破折号是 以及 ©  的示例。

您只需转义那些在 (X)HTML < > and & 中有意义的字符。

【讨论】:

  • 谢谢马达拉,我还试图在我的问题中明确区分“逃避”与“参考”,但你也澄清了这一点很好
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-29
  • 2010-09-20
  • 1970-01-01
  • 1970-01-01
  • 2020-06-04
相关资源
最近更新 更多