用于”’ HTML中的实体

前端之家收集整理的这篇文章主要介绍了用于”’ HTML中的实体前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在修改由另一方编写的一些X HTML文件.作为这项工作的一部分,我正在通过 LinqXML进行大量编辑.

我刚刚注意到,这些文件中的文本节点中的一些原始源XHTML文件包含" HTML entity.例如:

<p>Greeting: &quot;Hello,World!&quot;</p>

而当通过XElement.ToString()恢复XHTML文本时,& quot;实体正在被纯双引号替代:

<p>Greeting: "Hello,World!"</p>

问题:任何人都可以告诉我,原作者有什么动机可以使用&实体而不是纯双引号?这些实体是否服务于我不完全理解的目的?或者,我怀疑他们真的没有必要吗?

我明白了在某些上下文中是必需的,例如当需要在HTML属性中放置双引号时.例如:

<a href="/images/hello_world.jpg" alt="Greeting: &quot;Hello,World!&quot;">
  Greeting</a>

解决方法

知道使用“和”的动机是不可能的,也是不必要的.在元素内容中,但可能的动机包括:对HTML规则的误解;使用生成这样的代码的软件(可能是因为它的作者认为它是“更安全的”);并误解“的意思:许多人似乎认为它产生”智慧报价“(他们显然从未看过实际的结果).

无论如何,从来没有必要使用& quot;在HTML(XHTML或任何其他HTML版本)中的元素内容.任何HTML规范中都没有任何特定的含义可以给普通字符“there”.

正如问题所述,它在属性值中有其作用,但即使在它们中,如果该值包含双引号,也就是简单地使用单引号作为分隔符. alt =’问候语:“你好,世界!”“,或者如果您被允许更正自然语言文本中的错误,请使用适当的引号,例如alt =“问候:”你好,世界!“”

猜你在找的HTML相关文章