HTML-комментарии внутри открывающего тега элемента - PullRequest
38 голосов
/ 08 мая 2011

Когда я пытаюсь это сделать

<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 внутриоткрывающий тег элементов?

Ответы [ 4 ]

43 голосов
/ 08 мая 2011

HTML комментарии не допускаются внутри тегов, начало или конец, вообще.

3 голосов
/ 26 декабря 2018

Методы обхода комментариев внутри тегов HTML

HTML не позволяет использовать <!-- и --> для пометки комментариев внутри тега. Однако есть обходные пути для основных вариантов использования.

Чтобы добавить комментарий в тег HTML

Вы можете просто создать атрибут, который будете использовать, чтобы комментировать себя. Например:

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

Основным недостатком является то, что комментарии не будут удалены при минификации, поэтому:

  • это займет место в вашем окончательном HTML-документе, предоставленном пользователю
  • если пользователь нажмет View source, он сможет читать ваши комментарии

Для временного отключения атрибута

Просто переименуйте атрибут с префиксом, который, как вы знаете, указывает на временное отключение. Например, чтобы отключить атрибут с именем option:

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

становится

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

Очевидно, не делайте этого, если на самом деле есть действительный атрибут с именем disabled-option.

Для временного отключения класса или стиля

Поскольку при использовании несуществующего класса или стиля сообщение об ошибке отсутствует, это можно сделать, чтобы отключить класс или стиль:

Например, чтобы отключить класс с именем 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.

3 голосов
/ 08 мая 2011

номер
Согласно тегу HTML-комментария эти комментарии являются тегами, как и любой другой HTML-тег, и поэтому не могут быть размещены внутри начального или конечного тегов.

1 голос
/ 01 декабря 2017

Я запустил стандарт для структурирования комментариев HTML, который называется HTMLDoc, аналогичный JSDoc для Javascript, JavaDoc для Java и т. Д.

Это позволяет документацию на уровне тега, атрибута и значения.

Для вашего кода это может выглядеть примерно так:

<!--
@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>
...