줄바꿈이 포함된 HTML 제목 -> 제목이 표시되지 않으며 미리보기와 렌더링된 게시글 간 불일치

안녕하세요, 다른 포럼 소프트웨어에서 가져온 게시물 중 제목에 줄바꿈이 있는 경우들이 있습니다. 이 줄바꿈은 게시물 미리보기에서는 정상적으로 표시되지만, 최종 생성된 게시물에서는 제목으로 렌더링되지 않습니다. 이 문제는 어제 업데이트된 제 포럼과 Discourse Meta에서도 확인되고 있습니다:


줄바꿈이 있는 제목 테스트

일반 문단입니다.

줄바꿈이 없는 제목


<h2> 태그가 비어 있고, 그 뒤의 텍스트가 <p> 태그로 감싸져 있습니다:

<h2 dir="ltr">
</h2><p dir="ltr">줄바꿈이 있는 제목 테스트</p>

마이그레이션 과정에서 같은 사용자의 가져온 게시물 제목을 특별히 확인해 보았으며, 저와 해당 사용자 모두 당시에는 정상적으로 렌더링되었던 것을 기억하고 있으므로, 이것이 최근 발생한 회귀(regression) 문제일 것이라고 99% 확신합니다.

2개의 좋아요

음, LTR 관련 사항이 있으므로 @Osama, 최근에 추가한 CSS 플리퍼와 관련이 있을 수 있나요?

2개의 좋아요

아니라고 생각합니다. 게시물의 최종/렌더링된 HTML이 잘못되었고, CSS 플리퍼(구버전이나 신버전 모두)는 게시물 렌더링 과정에 전혀 관여하지 않기 때문입니다.

^ <p> 내부의 텍스트는 <h2> 안에 있어야 하고, <p> 태그 자체가 존재하지 않아야 합니다(제 생각에는).

6개의 좋아요

이 문제는 조리(cooking) 단계, 구체적으로는 마크다운 파싱 중에 발생하는 것 같습니다.

줄바꿈이 포함된 헤더를 PrettyText.markdown에 전달하면, 헤더의 내용이 p 태그로 감싸져 반환됩니다.

그리고 스크러빙(scrubbing) 단계에서 해당 단락이 헤더 태그에서 추출되어 다음과 같은 결과가 생성됩니다:

헤더 태그 내부의 단락이 스펙에 부합하지 않기 때문에 이런 현상이 발생하는 것으로 추정됩니다.

아직 마크다운 파서 코드를 검토 중이며, 왜 내용이 처음부터 p 태그로 감싸지는지 파악하고 있습니다.

2개의 좋아요

아, 이 문제는 다음 내용과 매우 관련이 있습니다:

Loofah가 릴리스될 때까지 몇 주 더 기다리는 것은 괜찮습니다.

Mike에게 이 문제가 발생했음을 언급하는 트윗을 보내겠습니다.

2개의 좋아요

안녕하세요, 확인해 주셔서 감사합니다. HTML은 줄바꿈을 무시하므로, 기술적으로 다음과 같은 코드는 올바른 것입니다:

<h2>

줄바꿈이 포함된 헤딩 테스트

</h2>

이것은 단순히 HTML 파서 이후 또는 내부에서 실행되는 마크다운 파서가 줄바꿈에 대해 <p> 태그를 생성하기 때문에 발생하는 문제인 것 같습니다.

1개의 좋아요

안녕하세요, 다음을 통해 이 문제를 수정했습니다:

여기서 확인하실 수 있습니다:

줄바꿈이 포함된 제목 테스트

일반 문단.

줄바꿈이 없는 제목


8개의 좋아요

좋네요, @nat 감사합니다! 이 작업을 위해 게시물을 다시 생성해야 하나요?

2개의 좋아요

네, 재베이크가 필요합니다. 이 수정으로 자동으로 처리할 수 없으며, 비용이 많이 드는 작업이기 때문입니다.

3개의 좋아요

이 주제는 2일 후 자동으로 닫혔습니다. 더 이상 답변을 할 수 없습니다.