Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > Как вывести на сайте тэги?Показать содержимое стра


Автор: vlad275 22.8.2008, 19:15
Как можно вывести в браузере содержимое веб-страницы, так чтобы были видны тэги?
Что-то вроде 
<NOHTML>
<i>Эти тэги мы видим</i>
</NOHTML>
<i>А здесь мы тэги не видим</i>

Автор: bars80080 22.8.2008, 20:33
все специальные символы можно изобразить с помощью их кодов:
Код

<b>dfs</b><br />
&#60 ;b&#62 ;dfs&#60 ;/b&#62 ;
запусти в браузере

Добавлено через 51 секунду
только сотри пробелы перед точками с запятой

Автор: K1ng 22.8.2008, 22:01
Код

<pre><i>Эти тэги мы видим</i></pre>


Только учтите, что выводится моноширинным шрифтом. Поменяйте по средствам CSS и все будет как надо...

Добавлено через 2 минуты
Это как альтернатива более валидному способу, который предложил bars80080...

Автор: bars80080 22.8.2008, 23:08
K1ng, вот первое о чём подумал, так о <pre>, но вот эта штука у меня отображается в ИЕ6 и ФФ3 жирным шрифтом, а не тэгами:
Код

<pre>
<b>qwe</b>
</pre>
думал обознался. в чём тут фишка?

Автор: K1ng 23.8.2008, 00:12
Точно, сильно извиняюсь...
Исключения в студию. <pre> и </pre> могут вмещать в себя любые символы и выводят их без всякой редактировки за исключением трех отдельных символов которые нужно записывать как:

"&lt;" для символа меньше "<"
"&gt;" для символа больше ">"
"&amp;" для амперсанда "&"

Пример: '&lt;b&gt; &lt;/b&gt;'
Будут отображать в любом броузере как '<b> </b>'

И опять же, не забываем про моноширинный шрифт и множество нюансов, что при желании их можно поправить:
Код

pre {
font-family:serif; /* Чтобы имел предпочитаемый шрифт */
font-size:100%; /* Чтобы объект отображался не больше не меньше чем родительский элемент */
display:inline; /* Чтобы объект отображался как строчный элемент */
}

Автор: vlad275 23.8.2008, 18:24
Хочется просто показать внутренности веб-странички без замены "<" и ">" на &lt и &gt .
Думаю сделать фрейм, а в нем отобразить source.txt

Автор: K1ng 23.8.2008, 19:05
Цитата(vlad275 @ 23.8.2008,  18:24)
Хочется просто показать внутренности веб-странички без замены "<" и ">" на &lt и &gt .
Думаю сделать фрейм, а в нем отобразить source.txt


Во-первых не "&lt и &gt", а "&lt; и &gt;"! А во-вторых без замены этих символов не получится! Если слишком много тегов которые нужно заменить используйте фильтр, по типу...
Код

<script type="text/JavaScript"> // <![CDATA[
/* Это лучше всего поместить между тегами <head> и </head>, хотя принципиальной разницы нет, просто чтобы под ногами не путался... Можно и в отдельный импортируемый файл! */


function RFtextEDIT( x1, x2, x3 ) {
var separator11 = ";"
s5 = new Array()
while (true) {
 if ( x2.indexOf(separator11) >= 0 ) {
  var s1 = x2.slice(0, x2.indexOf(separator11))
  var s2 = x2.slice(x2.indexOf(separator11) + separator11.length)
  var x2 = s2
  s5.push(s1.toString())
  if ( x2.indexOf(separator11) < 0 ) { s5.push(s2.toString()) }}
 else {
if ( s5[0] != undefined ) { break }
else {
s5[0] = x2
break }}}
for (s3 = 0; s3 <= s5.length; s3++) {
var s4 = s5[s3]
 if ( x1.indexOf(s4) >= 0 ) {
  while ( true ) {
   if ( x1.indexOf(s4) >= 0 ) {
    var s1 = x1.slice(0, x1.indexOf(s4))
    var s2 = x1.slice(x1.indexOf(s4) + s4.length)
    var s0 = s1 + x3 + s2
    var x1 = s0 }
   else { break }}}
else { var s0 = x1 }}
document.write(s0) }

// ]]>
</script>

Код

<script type="text/JavaScript"> /* <![CDATA[ */  /* В любой части тега <body> */ RFtextEDIT(RFtextEDIT(RFtextEDIT('МОЖНО ПИСАТЬ ЛЮБЫЕ ТЕГИ ТУТ!!!!!!!',"<","&lt;"),">","&gt;"),"&","&amp;") /* ]]> */ </script>


Протэстил на опере и IE6, все ОК! Кому не лень можете тестить на остальных браузерах, думаю все будет пахать!
P.S. В вышеприведенных кодах изменять можно только ОДНУ ЧАСТЬ строки - 'МОЖНО ПИСАТЬ ЛЮБЫЕ ТЕГИ ТУТ!!!!!!!'! Это можно стереть и записать, к примеру - '<b>Эти теги видны</b>'. При том все это абсолютно валидно (я проверяю по XHTML 1.0).

Проблема в том, что я не могу решить вопрос с "многострочным кодом". Переход на другую строку как-то кавычки сбивают что-ли... Может у кого-то есть вариант как эту беду решить? На сей момент правильно и валидно отобразит любой код без кнопки "Enter"!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)