gpt4 book ai didi

html - 在 HTML 中用于 '"' 实体

转载 作者:技术小花猫 更新时间:2023-10-29 11:40:32 24 4
gpt4 key购买 nike

我正在修改一些由另一方编写的 XHTML 文件。作为这项工作的一部分,我正在通过 Linq to XML 进行一些批量编辑。

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

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

当通过 XElement.ToString() 恢复 XHTML 文本时, " 实体被替换为普通双引号:

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

问题:谁能告诉我原作者使用 " 实体而不是普通双引号的动机是什么?这些实体是否服务于我不完全理解的目的?或者,它们真的像我怀疑的那样没有必要吗?

我确实理解 " 在某些情况下是必要的,例如当需要在 HTML 属性中放置双引号时。例如:

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

最佳答案

不可能也没有必要知道在元素内容中使用"的动机,但可能的动机包括:对HTML规则的误解;使用生成此类代码的软件(可能是因为其作者认为它“更安全”);以及对"含义的误解:很多人似乎认为它会产生“智能引号”(他们显然从未看过实际结果)。

无论如何,永远不需要在 HTML(XHTML 或任何其他 HTML 版本)的元素内容中使用 "。在任何 HTML 规范中都没有任何内容可以为普通字符 "分配任何特殊含义。

正如问题所说,它在属性值中有其作用,但即使在属性值中,如果值包含双引号,则仅使用单引号作为分隔符会更简单,例如alt='Greeting: "Hello, World!"' 或者,如果允许您更正自然语言文本中的错误,请使用正确的引号,例如alt="问候语:“你好,世界!”

关于html - 在 HTML 中用于 '&quot;' 实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25916943/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com