# Заголовки HTML с переносами строк: заголовок отсутствует и несоответствие между превью и отрендеренным постом

**URL:** <https://meta.discourse.org/t/html-headings-with-line-breaks-no-heading-and-inconsistency-between-preview-and-rendered-post/261043>\
**Category:** Bug\
**Created:** [08.Апрель.2023 16:05:44 UTC](https://meta.discourse.org/t/html-headings-with-line-breaks-no-heading-and-inconsistency-between-preview-and-rendered-post/261043 "2023-04-08T16:05:44Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![selase](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/selase/32/270909_2.png) [@selase](https://meta.discourse.org/u/selase)\
**Post date:** [08.Май.2023 18:15:47 UTC](https://meta.discourse.org/t/html-headings-with-line-breaks-no-heading-and-inconsistency-between-preview-and-rendered-post/261043/5 "2023-05-08T18:15:47Z")

</div>

Это, похоже, происходит во время обработки, а именно при парсинге Markdown.

> <https://github.com/discourse/discourse/blob/81aff58d09e46c01670e40e5a4e1471ea0cd3486/lib/pretty_text.rb#L302-L315>

Передача заголовка с переносами строк в `PrettyText.markdown` возвращает содержимое заголовка, обернутое в тег `p`.

Затем при очистке параграф извлекается из тега заголовка, что приводит к следующему результату:

> [@rahim123](#):
>
> ```plaintext
> <h2 dir="ltr">
> </h2><p dir="ltr">Heading test with line breaks</p>
> 
> ```

Думаю, это происходит потому, что параграф внутри тега заголовка не соответствует спецификации?

Я всё ещё изучаю код парсера Markdown, чтобы понять, почему содержимое изначально оборачивается в тег `p`.

---

_[View the full topic](https://meta.discourse.org/t/html-headings-with-line-breaks-no-heading-and-inconsistency-between-preview-and-rendered-post/261043)._
