Цитата из
rsdn.format / Specification:
Параграфы
Начало строки — начало параграфа. Перенос строки — конец параграфа.
One Two
Three
Выходной HTML
<p class='plain-text'>One Two</p>
<p class='plain-text'>Three</p>
Предлагаю изменить на:
Параграфом является любой текст, не входящий в другие блочные элементы.
Переносы строк внутри параграфа сохраняются (заменяются на <br/>).
Конец параграфа:
* пустая строка (или строка из пробелов)
* следующий блочный элемент
* конец документа
То есть из
This is a first paragraph,
on multiple lines.
This is a second paragraph
which has multiple lines too.
получаем
<p>This is a first paragraph,<br/>on multiple lines.</p>
<p><br/></p>
<p>This is a second paragraph,<br/>which has multiple lines too.</p>
Здравствуйте, _Raz_, Вы писали:
_R_>Параграфом является любой текст, не входящий в другие блочные элементы.
Ок
_R_>Переносы строк внутри параграфа сохраняются (заменяются на <br/>).
А зачем это? Я бы предпочел от br в разметке совсем избавиться. Мне кажется замена переносов на p вполне адекватно.
... << RSDN@Home 1.2.0 alpha 5 rev. 100 on Windows 8 6.2.9200.0>>
Здравствуйте, AndrewVK, Вы писали:
_R_>>Переносы строк внутри параграфа сохраняются (заменяются на <br/>).
AVK>А зачем это? Я бы предпочел от br в разметке совсем избавиться. Мне кажется замена переносов на p вполне адекватно.
Что бы сохранить форматирование людям, которые пишут определенной шириной. Например, использующие NNTP.
Если же каждую строку оформлять параграфом, то во-первых я не представляю как к этому отнесутся поисковики и во-вторых DOM будет не соответствовать содержанию, что приведет к усложнению кода в части inline тегов.
This is a **first paragraph,
on multiple** lines.
<p>This is a <em>first paragraph,</em></p>
<p><em>on multiple</em> lines.</p>
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 77>>
Здравствуйте, _Raz_, Вы писали:
_R_>Если же каждую строку оформлять параграфом, то во-первых я не представляю как к этому отнесутся поисковики
Им пофигу.
_R_> и во-вторых DOM будет не соответствовать содержанию
Это еще почему?
_R_>что приведет к усложнению кода в части inline тегов.
В коде никаких параграфов и br быть не должно.
... << RSDN@Home 1.2.0 alpha 5 rev. 100 on Windows 8 6.2.9200.0>>
Здравствуйте, AndrewVK, Вы писали:
_R_>> и во-вторых DOM будет не соответствовать содержанию
AVK>Это еще почему?
Если отказаться от переноса строки, то нельзя построить объектную модель, соответствующую тому, что написал пользователь.
Человек пишет два параграфа:
This is a first paragraph,
on multiple lines.
This is a second paragraph
which has multiple lines too.
После обработки получаем пять:
<p>This is a first paragraph,</p>
<p>on multiple lines.</p>
<p></p>
<p>This is a second paragraph</p>
<p>which has multiple lines too.</p>
_R_>>что приведет к усложнению кода в части inline тегов.
AVK>В коде никаких параграфов и br быть не должно.
Я про код парсера. Он должен учитывать случай, когда inline тег начинается в одном блоке, а заканчивается в другом.
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 77>>
Здравствуйте, _Raz_, Вы писали:
_R_>Человек пишет два параграфа:
_R_>_R_>This is a first paragraph,
_R_>on multiple lines.
_R_>This is a second paragraph
_R_>which has multiple lines too.
_R_>
А почему человек не может написать:
This is a first paragraph, on multiple lines.
This is a second paragraph which has multiple lines too.
?
AVK>>В коде никаких параграфов и br быть не должно.
_R_>Я про код парсера. Он должен учитывать случай, когда inline тег начинается в одном блоке, а заканчивается в другом.
Понимаешь, проблема не в параграфах, а в том что ты ввел странную сущность — принудительные переносы внутри параграфа. Зачем она?
... << RSDN@Home 1.2.0 alpha 5 rev. 100 on Windows 8 6.2.9200.0>>
Здравствуйте, AndrewVK, Вы писали:
_R_>>Я про код парсера. Он должен учитывать случай, когда inline тег начинается в одном блоке, а заканчивается в другом.
AVK>Понимаешь, проблема не в параграфах, а в том что ты ввел странную сущность — принудительные переносы внутри параграфа. Зачем она?
Я согласился с тобой.
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 77>>