Можно ли размещать html-комментарии вне тегов <html>?

Валидатор W3c не сказал мне об этом, но мне было любопытно, есть ли у кого-нибудь еще мнение о размещении html-комментариев вне html-тегов?

...
</body>
</html>
<!-- byee -->

У меня есть приложение, я выводю некоторые данные и хочу, чтобы это было делом в последнюю очередь, что, к сожалению, означает, что я уже прикрепил свой последний </html>.

Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
14
0
2 761
6

Ответы 6

Любой клиент должен полностью игнорировать комментарии, поэтому они не должны вызывать никаких проблем. В любом случае, если валидатор не жаловался, вероятно, все в порядке.

Я не вижу в этом проблемы - допустимые комментарии не указываются в DTD (поскольку они предназначены для людей, а не для компьютеров). Кроме того, DOM API (http://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html) явно разрешает множество комментариев непосредственно под узлом документа (то есть не корневым элементом HTML, корнем логического документа), поэтому любой соответствующий браузер должен разрешать это.

Это не значит, что вы не найдете браузеров или инструментов, особенно старых, которые давят на вас. Но я был бы удивлен, если бы их было много.

Я не видел, чтобы браузер жаловался на это. Ради интереса я тестировал в древней Mosaic 2.1.1 (с 1996 года !!), и даже этот очень старый браузер не жаловался.

some 14.12.2008 01:35

Я не думаю, что комментарий после </html> вызовет какие-либо проблемы, но я считаю, что комментарий, который предшествует объявлению DOCTYPE (и, следовательно, перед тегом <html>), переведет IE6 в режим причуд.

На самом деле это влияет не только на IE6. здесь долгое обсуждение того, почему w3 не делает этот недопустимый HTML: w3.org/Bugs/Public/show_bug.cgi?id=12072

benrifkah 01.10.2011 03:00

Да, конечно. Любой движок рендеринга (IN, Firefox, Opera, Safari и т. д.) Полностью игнорирует любые теги комментариев HTML, независимо от их позиции.

Технически это не так, поскольку IE анализирует комментарии на предмет условных операторов. См .: «msdn.microsoft.com/en-us/library/ms537512(VS.85).aspx

Zack The Human 15.12.2008 05:55

Похоже, IE больше не проблема. > Начиная с Internet Explorer 10, условные комментарии больше не поддерживаются в стандартном режиме.

Mat Lipe 25.02.2021 20:59

У меня была SEO-компания, которая работала над сайтом клиента, решила добавить HTML-комментарий в один из моих PHP-включений, который находился за пределами HTML-тега, и это вызвало проблемы в Internet Explorer. Это вызвало множество проблем с форматированием моих выпадающих меню. Не имело смысла, почему он сломался, но это было абсолютно 100% из-за комментария. Как только комментарий был удален, все вернулось в норму.

Если вы не можете представить демонстрацию, описание следует рассматривать как ложную тревогу; проблема была вызвана чем-то другим (например, ошибкой в ​​синтаксисе комментария, которую легко исправить).

Jukka K. Korpela 30.08.2012 01:19

@Eric, какая версия IE была?

Pacerier 05.05.2014 19:46

Я думаю, что это полезная информация, но, возможно, более уместна в качестве комментария, чем ответа.

RobD 05.08.2014 13:43

К вашему сведению, если вы используете AngularJS и создаете .directive, где replace истинно, комментарий за пределами корневого элемента в фрагменте HTML приведет к тому, что Angular увидит два корневых элемента и выдаст эту ошибку

Template for directive 'yourDirective' must have exactly one root element.

Другие вопросы по теме