【问题标题】:How to comment HTML tag attribute in HTML source code?如何在 HTML 源代码中注释 HTML 标签属性?
【发布时间】:2011-06-12 06:36:48
【问题描述】:

例如:

<a /*title="need to be comment out"*/>a link</a>

【问题讨论】:

  • 您是否有理由只想将它们注释掉?之后你需要它们存在吗?如果没有,您可以完全删除它们。
  • @Pit 就像编码其他语言一样。有时,我需要将其注释掉以进行测试。
  • 在 mac(使用程序;Coda)上,您只需在选择课程项目后按 CMD + / 即可

标签: html


【解决方案1】:

W3C documentation 表示无法完成:

注意 cmets 是标记。

这基本上意味着&lt;!-- ...&gt; 评论标签就像任何其他标签一样,所以&lt;a &lt;!--title="need to be comment out"--&gt;&gt;a link&lt;/a&gt;&lt;a &lt;span&gt;&lt;/span&gt;&gt;a link&lt;/a&gt; 一样错误。

为了快速破解,我相信一个常见的选择是重命名该属性。当您获得无效的 HTML 时,您可以暂时删除该属性:

<a xtitle="need to be comment out">a link</a>

如果您碰巧使用的是服务器端语言,您也可以使用它自己的注释语法。例如,在 PHP 中你可以这样做:

<a <?php/*title="need to be comment out"*/?>>a link</a>

... 生成此 HTML:

<a >a link</a>

...在 ASP.NET 中,您可以使用 &lt;%-- Comment goes here --%&gt;,而 MVC Razor 语法是 @* Comment goes here *@

【讨论】:

  • 您可能希望更明显地表明您已故意“注释”了该属性。例如,comment_out_title="..."。可能会被认为是拼写错误。
  • 如果您使用data- 属性(例如&lt;a data-xtitle="need to be comment out"&gt;a link&lt;/a&gt;),您不会获得无效的 HTML,尽管许多最佳实践(包括 Angular 等大型框架的最佳实践)不建议这样做。
  • 一件小事,但在 PHP 中,您也可以删除空格,例如,&lt;a&lt;? php /* title="need to be comment out"*/ ?&gt;&gt;a link&lt;/a&gt;
【解决方案2】:

我通常只是将_x 放在属性名称的末尾。然后该属性被忽略,因为它是未知的。因此,如果我想从此元素中注释掉 id 属性:

<input type="text" name="name" id="name">

我会改成这样:

<input type="text" name="name" id_x="name">

这还有一个好处是可以搜索“_x=”来查找所有评论的属性。

【讨论】:

  • 显然这个技巧应该只在开发时使用,并且“注释”属性不应该留在生产代码中。
  • 很好,我只用-id="name"
  • @ChrisNash 一般来说,注释掉的 HTML 不应该留在代码中。
【解决方案3】:

你不能。评论只能在标签之外开始和结束。

有些人在属性名称前加上 x,从而更改它并导致它几乎被忽略(因为它仍然经常在 DOM 中可见),但这是无效的。

【讨论】:

  • 是的,这非常简单,我也这样做是为了“评论”一些 CSS。我称之为“破坏”这条线。
【解决方案4】:

这无法完成,但可以通过 removeAttribute(attribute_name) javascript 调用删除属性。

或者,您可以使用 &lt;a nosuchns:title="nevershown"&gt;click&lt;/a&gt; 之类的命名空间作为要删除的属性的前缀,然后通过 javascript 删除命名空间。

【讨论】:

    猜你喜欢
    • 2020-10-10
    • 2011-04-14
    • 1970-01-01
    • 1970-01-01
    • 2015-12-19
    • 1970-01-01
    • 2018-08-08
    • 2018-11-16
    • 1970-01-01
    相关资源
    最近更新 更多