|
|
|
| Новостной скрипт- с Вашего сайта. В выводе новостей абзацы все сливаются, отступ у каждого абзаца можно сделать, если в стилях прописать отступ у тега <p>, поэтому- не подскажете, как разрывы строк превратить в <p> ?
В коде, который виден пользователю, меж абзацами идет просто разрыв строк <br />
Как его превратить в <p> ?
Я в файле news.php
перед выводом тела новости
echo nl2br ($news['body']);
|
пишу
function body_work_up($body)
{
$body = preg_replace("#\<br />#isU",'<p>',$body);
return $body;
}
|
и - ничего не меняется | |
|
|
|
|
|
|
|
для: gradnn
(08.02.2007 в 16:21)
| | А если
echo str_replace("<br />", "<p>", nl2br($news['body']));
|
? | |
|
|
|
|
|
|
|
для: Киналь
(08.02.2007 в 16:24)
| | Не надо str_replace("<br />", "<p>", nl2br($news['body'])); просто nl2br($news['body']) | |
|
|
|
|
|
|
|
для: вит
(08.02.2007 в 16:54)
| | Как насчет прочесть хотя бы тему ветви?
to gradnn :
корректнее будет
echo "<p>\r\n".str_replace("<br />", "</p><p>", nl2br($news['body']))."</p>";
|
| |
|
|
|
|
|
|
|
для: Trianon
(08.02.2007 в 17:02)
| | Если не ошибаюсь, то по стандарту тег <p> не требует обязательного закрытия, так что можно даже проще. | |
|
|
|
|
|
|
|
для: Loki
(08.02.2007 в 17:21)
| | Тогда можно удовлетвориться вариантом, который предложил Киналь. | |
|
|
|
|
|
|
|
для: Loki
(08.02.2007 в 17:21)
| | Это смотря, какой DOCTYPE прописан.
если
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
то код валидный. | |
|
|
|
|
|
|
|
для: куч1963
(09.02.2007 в 04:40)
| | а если:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
то нет? | |
|
|
|
|
|
|
|
для: Loki
(08.02.2007 в 17:21)
| | Между прочим, тег, не требующий обязательного закрытия, оставленный незакрытым, хороший стиль требует пометить слэшем. <p /> | |
|
|
|
|
|
|
|
для: Trianon
(09.02.2007 в 09:39)
| | Нет. Это справедливо для самозакрывающихся тегов. Например <br />.
<p> таковым не является. | |
|
|
|
|
|
|
|
для: Loki
(08.02.2007 в 17:21)
| | Кстати, замечено, что если не закрывать <p>, то рано или поздно произойдет сбой разметки, если не в IE, то в Opera...
Поэтому, все-таки, лучше <p> закрывать... | |
|
|
|
|
|
|
|
для: ise-dvp
(15.03.2007 в 14:24)
| | Замечено кем и в каких случаях это происходит? | |
|
|
|
|
|
|
|
для: ise-dvp
(15.03.2007 в 14:24)
| | если не закрывать <p>, то рано или поздно произойдет сбой разметки, если не в IE, то в Opera
Ни разу не видел, хоть и юзаю Оперу еще со времен амнистии по поводу смерти Сталина. | |
|
|
|
|
|
|
|
для: gradnn
(08.02.2007 в 16:21)
| | Всем спасибо, сейчас буду пробовать. Кстати, действительно, тег <p> не требует закрытия, и без </p> мне нравится верстать больше. | |
|
|
|
|
|
|
|
для: gradnn
(08.02.2007 в 16:21)
| | Спасибо, кстати, работает оба варианта. | |
|
|
|