1

Тема: Тег <code></code>

В редакторе введен такой текст:
<code><div class="arrow_box arrow_box_top">Arrow top</div></code>
Я всегда считал, что внутри тега <code> html-код выполняться не должен. Сейчас при публикации пользователям просто выводится Arrow top, вся остальная часть игнорируется. Что необходимо сделать, чтобы пользователям выводился полный html-код, а не результат его выполнения?
UPD. CSS-код, хвала богам, не выполняется, а выводится пользователям. Правда, ломается форматирование ко всем чертям, но выводится нормально.

10.05.2013 12:30:00. Текст был изменен (iCamper).

2

Re: Тег <code></code>

Тег <code> помимо смысловой нагрузки несет только оформительскую. Другие html-теги работают внутри <code> так же, как и в других местах страницы: http://htmlbook.ru/html/code

Если вам нужно показать посетителям фрагмент html-кода, в нем нужно заменить знаки < и > на &lt; и &gt;, например:

<p>Заголовок оформляется так:</p>
<code>&lt;h1&gt;Заголовок&lt;/h1&gt;</code>

3

Re: Тег <code></code>

Ок. А почему съедаются знаки табуляции? В редакторе у меня привлекательный код при публикации превращается в месиво.

10.05.2013 17:18:21. Текст был изменен (iCamper).

4

Re: Тег <code></code>

Пробуйте <pre><code>, вот так:

<p>Заголовок оформляется так:</p>
<pre><code>&lt;h1&gt;Заголовок&lt;/h1&gt;</code></pre>

Но я предпочитаю заменять символ табуляции на пробелы. Обычно в исходном коде табуляция составляет 4 символа, а браузеры делают ее ширину равной 8 символам, это некрасиво и неудобно.

Используйте для таких замен и преобразований символов < и > продвинутые редакторы вроде Notepad++.

Кстати, набор тегов <pre><code> без дополнительных усилий обрабатывается подсветкой кода highlight.js