元素开始标签内的 HTML 注释

问题描述 投票:0回答:6

当我尝试这个时

<option disabled = "disabled" <!-- Used to disable any particular option -->
        selected = "selected" <!-- Used to pre-select any particular option -->
        label = "string"      <!-- Used to provide a short version of the content in the option --> 
        value = "value">      <!-- The actual value that will be send to the server. If omitted the content between the option opening and closing tags will be send. -->

Option 1
</option>

我正在尝试注释元素开始标记内的属性和值。然而,这不起作用,因为浏览器(在 IE9、FF4.01、GG11、AF5 和 Opera11 上测试)将disabled=“disabled”后面的所有内容视为注释或内容。

元素的开始标签内不允许使用 HTMl 注释吗?

html tags comments
6个回答
63
投票

HTML 注释不允许在inside 标签、开始或结束处出现。


38
投票

HTML 标签内注释的解决方法

HTML 不允许您使用

<!--
-->
来标记标签内的注释。不过,主要用例有一些解决方法。

在 HTML 标签内添加注释

您可以编写一个属性名称,仅用于对自己进行评论。例如:

<div comment="Name and Id">
   ... 
</div>

主要的缺点是这些注释在缩小过程中不会被删除,所以:

  • 它将占用提供给用户的最终 HTML 文档中的空间
  • 如果用户点击
    View source
    他们将能够阅读您的评论

暂时禁用某个属性

只需使用您决定用来指示临时禁用的前缀重命名该属性即可。例如,要禁用名为

option
的属性,您可以选择执行以下操作:

<div option="big">
   ... 
</div>

成为

<div DISABLED-option="big">
   ... 
</div>

如果您实际上可能需要一个名为

disabled-option
的真实属性,显然不要这样做。

暂时禁用某个类或样式

由于如果您使用不存在的类或样式,不会出现错误消息,因此您只需添加任何前缀或后缀即可禁用类或样式。为了帮助读者猜测您的意思,我建议使用前缀

DISABLED-

例如,要禁用名为

tall
的类,同时保留名为
highlighted
的类:

<div class="highlighted tall">
   ... 
</div>

成为

<div class="highlighted DISABLED-tall">
   ... 
</div>

类似地,要禁用

color
样式,同时保留
font-weight
样式:

<div style="font-weight:700; color:red;">
   ...
</div>

成为

<div style="font-weight:700; DISABLED-color:red;">
   ...
</div>

再次请记住,这些在缩小过程中不会被删除,因此它们将占用最终用户收到的文件中的空间,并且可以使用

View source
查看。


7
投票

我启动了一个用于构建 HTML 注释的标准,称为“HTMLDoc”,类似于 Javascript 的 JSDoc、Java 的 JavaDoc 等。

您可以在这里阅读:http://usehtmldoc.surge.sh

它允许在标签、属性和值级别进行记录。

对于您的代码,它可能看起来像这样:

<!--
@tag option
@attribute disabled Used to disable any particular option
@attribute selected Used to pre-select any particular option
@attribute label Used to provide a short version of the content in the option
@attribute value The actual value that will be send to the server. If omitted the content between the option opening and closing tags will be send.
-->

<option disabled = "disabled"
        selected = "selected"
        label = "string"
        value = "value">
Option 1
</option>

5
投票

没有。
根据 HTML comment tag 这些评论是像任何其他 HTML 标签一样的标签,因此不能被 放置在开始或结束标签内。


1
投票

我们不能在 HTML 标签内使用注释,但我们可以在 HTML 标签之后或之前使用注释。


0
投票
您可以删除属性以禁用它们,也可以在引号中注释掉。

例如:

<option 
  disabled = "disabled" "--Used to disable any particular option"
  selected = "selected" "--Used to pre-select any particular option"
  label    = "string"   "--Used to provide a short version of the content in the option"

  "--You can erase the attribute to disable it:"
  *value = "value"
  -class = "myOptions"
  
  "--Disabling doesn't work with any characters:"
  //id  = "myOption" "--This won't disable it"
  
>Option 1</option>
规则由你选择。
© www.soinside.com 2019 - 2024. All rights reserved.