Html разметка не проходит валидацию из-за JavaScript - CodeHelper

Html разметка не проходит валидацию из-за JavaScript

0

В javascript коде имеется строчка

var content = '<div>Текст</div>';

При прохождении теста на валидацию разметки я получаю ошибку в этой строчке — недопустимое положение тега <div>. Как это исправить?

Лучший ответ:

1

Чтобы исправить эту проблему мы можем сделать одну из двух вещей. Самый простой способ, особенно если скрипт содержит более одной или двух строчек, вынести этот скрипт в отдельный файл, тем самым опустошив содержимое тэга <script>.

Если же скрипт содержит одну или две строчки, то не имеет смысла выносить скрипт в отдельный файл, по этому вы пожелаете оставить содержимое тэгов <script>, при этом, указав валидатору игнорировать это содержимое. Мы это сделаем, разместив код скрипта внутри тэга CDATA. Это выглядит так:

<script type="text/javascript">
/* <![CDATA[ */
// content of your Javascript goes here
/* ]]> */
</script>

Закомментировать тэг CDATA скрыт от старых браузеров, не вызывает ошибок при проверке на валидность, а также корректно интерпретируется браузером.

CDATA позволяет обойти проблемы с символами

 <, &, ]]>, ––

Это касается и внутреннего содержимого тега <style>

v1.7.123.556
© 2009—2010 CodeHelper FAQ | О сайте | Обратная связь | История изменений | Статьи
Creative Commons LicenseМатериалы сайта распространяются под лицензией Creative Commons Attribution-Share Alike 3.0 Unported.