Перейти к содержимому



Перенос строки в HTML

#1 iddqd

iddqd
  • Пользователь
  • 3 сообщений
  • Репутация: 0
0

Отправлено 13 Июль 2009 - 20:02

Ситуация такая - в php файле с помощью цикла генерятся и выводятся ссылки.
На сайте они расположены в столбик - друг под другом, а в исходном коде - одной длинной строкой.

цикл в PHP выглядит примерно так:
 

while($navRow=mysql_fetch_array($navRes))
echo '<div class="navButton"><a href="'.$navRow['href'].'.php" title='.$navRow['link_title'].'>'.$navRow['title'].'</a></div>';

Подскажите, что бы такого дописать в шаг цикла, чтобы html-код получался красивым - строчка под строчкой?
Спасибо.


 

 

  • 0

#2 Евгений

Евгений
  • Пользователь
  • 481 сообщений
  • Репутация: 0

Отправлено 13 Июль 2009 - 20:26

echo '<div class="navButton"><a href="'.$navRow['href'].'.php" title='.$navRow['link_title'].'>'.$navRow['title'].'</a></div>\r\n';


  • 0

#3 iddqd

iddqd
    Topic Starter
  • Пользователь
  • 3 сообщений
  • Репутация: 0

Отправлено 13 Июль 2009 - 20:35

Почему-то не работает. Просто в текст дописывается \n без переноса строки.
\r и \n\r тот же результат.


  • 0

#4 Евгений

Евгений
  • Пользователь
  • 481 сообщений
  • Репутация: 0

Отправлено 13 Июль 2009 - 20:38

я тестил на этом примере и все получилось, попробуйте

$i = 1;
while ($i <= 10) {
	  echo "<div>".$i."</div>\r\n";
	  $i++;
}

или даже попробуйте написать \r\n\r\n
  • 0

#5 iddqd

iddqd
    Topic Starter
  • Пользователь
  • 3 сообщений
  • Репутация: 0

Отправлено 13 Июль 2009 - 20:50

Спасибо, все получилось. Видимо, была слишком перегруженная строка или избыток кавычек.
Вот так все работает.

$str='<a href="'.$navLeftRow['alias'].'.php" title="'.$navLeftRow['link_title'].'">'.$navLeftRow['title'].'</a>';
echo "<div class='navLeftBtn'>".$str."</div>\r\n";

Мистика :)


  • 0

#6 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 13 Июль 2009 - 22:41

iddqd, красивый код на PHP
<?php
$str = "";

while($navRow = mysql_fetch_array($navRes))
   $str .= "<a class='myClass' href='{$navRow['href']}.php' title='{$navRow['link_title']}'>{$navRow['title']}</a>";

echo $str;
?>

И не забываем, что ссылки мы так же можем сделать блочными элементами, и не надо их пихать в DIV.
CSS
/* относится к любой ссылке класса myClass */
.myClass
{
   display: block;
   width: [ширина]px;
   height: [высота]px;
}

/* относится к ссылке в неактивном состоянии класса myClass */
.myClass:link
{
   color: #000;
   text-decoration: none;
}

/* относится к ссылке в наведённом состоянии класса myClass */
.myClass:hover
{
   color: #FFF;
   text-decoration: underline;
}

А если вы про красоту кода, то:
\r\n - переход на новую строку в Windows
\n - переход на новую строку в UNIX-системах
  • 0

#7 Troy

Troy
  • Пользователь
  • 18 сообщений
  • Репутация: 0

Отправлено 23 Июль 2009 - 18:26

не мистика , просто в кавычках код выполняется а в апастрофах нет


  • 0


Оформление форума – IPBSkins.ru