Например:
<a /*title="need to be comment out"*/>a link</a>
Например:
<a /*title="need to be comment out"*/>a link</a>
документация W3C предполагает, что это невозможно:
Обратите внимание, что комментарии являются разметкой.
В основном это означает, что тег комментария <!-- ...>
похож на любой другой тег, поэтому <a <!--title="need to be comment out"-->>a link</a>
неверен как <a <span></span>>a link</a>
.
Для быстрого взлома я считаю, что общим вариантом является переименование этого атрибута. Пока вы получаете недействительный 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 вы можете использовать <%-- Comment goes here --%>
, а синтаксис MVC Razor - @* Comment goes here *@
Вы не можете. Комментарии могут начинаться и заканчиваться только за пределами тегов.
Некоторые люди предваряют х имя атрибута, тем самым изменяя его и заставляя его полностью игнорировать (поскольку он все еще часто отображается в DOM), но это неверно.
Это невозможно сделать, но атрибут можно удалить с помощью вызова removeAttribute(attribute_name)
javascript.
В качестве альтернативы вы можете префикс атрибутов, которые вы хотите удалить, с пространством имен, например <a nosuchns:title="nevershown">click</a>
, и удалить пространство имен с помощью javascript.
Обычно я просто помещаю _x
в конец имени атрибута. Тогда атрибут игнорируется, потому что он неизвестен. Поэтому, если я хотел бы прокомментировать атрибут id
этого элемента:
<input type="text" name="name" id="name">
Я бы изменил его на это:
<input type="text" name="name" id_x="name">
Это также имеет то преимущество, что можно найти "_x=
", чтобы найти все прокомментированные атрибуты.
Комментарий в HTML выглядит следующим образом:
<!-- comment -->
Вы можете выбрать атрибут и добавить <!--
и добавить -->
, но я не знаю, работает ли это для атрибутов элемента.