【问题标题】:Whats the difference between & and & in HTML5? [duplicate]HTML5 中的 & 和 & 有什么区别? [复制]
【发布时间】:2013-03-24 11:34:03
【问题描述】:

&& 有什么区别?

就像下面的代码一样,两者的工作方式相同吗?

<a href="mailto:EMAIL?subject=BLABLABLA&body=http://URL, SHORT DESCRIPTION"></a>
<a href="mailto:EMAIL?subject=BLABLABLA&amp;body=http://URL, SHORT DESCRIPTION"></a>

【问题讨论】:

    标签: html share href mailto subject


    【解决方案1】:

    &amp;amp;&amp;amp; 的 html 实体(编码形式),用于在语言中描述与符号,其中与符号实际上表示某种东西,例如 XML。

    HTML 呈现工具,如浏览器,将在源代码中看到 &amp;amp;,但呈现 &amp;amp;

    【讨论】:

      【解决方案2】:

      &amp;amp;&amp;amp;的html特殊字符,作为html特殊字符的sigial具有特殊意义。 href="&amp;" 工作的事实是大多数浏览器提供的便利,这些浏览器足以正确处理无效的 HTML,但它在技术上是不正确的。您想使用&amp;amp;,因为实体将在HTML 代码中转换为&amp;amp;

      考虑您是否使用" 而不是&amp;amp;。这将结束 href 值并使 HTML 不正确,对吗?你想使用&amp;quot;

      参见:http://www.w3.org/html/wg/drafts/html/master/single-page.html#syntax-errors“涉及脆弱语法结构的错误”——事实上,它指出使用 &amp;amp; 如果后面没有命名字符引用是可以的,但其中有很多;理想情况下,您会或多或少地自动转义属性输入。

      【讨论】:

        【解决方案3】:

        在 HTML5 中,它们在该示例中是等价的。传统上,在 HTML 中,只有 &amp;amp; 是正确的——但与许多事情一样,Web 开发人员愉快地忽略了这个不方便的规则,并且到处都写了简单的 & 符号。就浏览器而言,它们只是“做了正确的事情”并将这些 & 符号解释为 & 符号。 HTML5 标准化了这种行为,所以现在 &amp; 本身是允许的,只要之后的内容看起来不像实体引用。

        【讨论】:

        • 你能指出规范中这种行为的标准化吗?我现在在找……
        • @ExplosionPills:它实际上是以一种倒退的方式进行的。传统 HTML 仅将 &amp; 指定为实体标记,而 HTML5 明确禁止仅“模棱两可的 & 符号”。它位于规范的“HTML 语法”部分。
        • @ExplosionPills -行为(与允许或禁止的行为相反)在这里:w3.org/html/wg/drafts/html/master/…
        • “不明确的 & 符号”在这里定义:w3c.github.io/html/syntax.html#ambiguous-ampersand
        猜你喜欢
        • 1970-01-01
        • 2012-03-13
        • 2015-11-23
        • 2013-02-13
        • 2011-04-26
        • 2016-09-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多