자동 하이퍼링크 처리된 URI가 주위(한 줄)에 충분한 공간이 있어 블록 요소로 처리될 수 있음에도 불구하고, 다음과 같은 이유로 원박스(onebox) 처리가 되지 않습니다:
1. 텍스트
https://example.com
텍스트
…다음과 같이 변환됩니다:
-
텍스트
텍스트
자동 하이퍼링크 처리된 URI가 주위(한 줄)에 충분한 공간이 있어 블록 요소로 처리될 수 있음에도 불구하고, 다음과 같은 이유로 원박스(onebox) 처리가 되지 않습니다:
1. 텍스트
https://example.com
텍스트
…다음과 같이 변환됩니다:
텍스트
텍스트
게시물의 HTML을 한 번 다시 빌드해 보세요 — 링크가 제대로 onebox되지 않는 문제를 해결하는 데 효과적입니다:
앞쪽에 공백이 있으면 인라인 원박스로 처리되고 전체 원박스가 되지 않을 것 같습니다. 우회 방법을 잘 모르겠습니다. ![]()
그렇게 했을 때 효과가 있었나요?
@JammyDodger, 지금까지 시도해 본 모든 인스턴스(총 약 8개)에서 제가 확인한 결과는 그와 같습니다.
@janan_gagan, 저는 어디에도 TL4 권한이 없습니다… 만약 여러분 중 누군가가 /1에 있는 제 게시물의 HTML5 콘텐츠를 다시 빌드해 줄 수 있다면, 그것이 작동하는지 확인할 수 있을 것입니다. 그러나 aforementioned 내용에 따르면, 작동할 것이라고 생각하지 않습니다.
그동안, 현재 이것이 불가능해 보이므로 Contribute > Feature 게시물로 전환했습니다.
어쨌든 감사합니다.
네, markdown-it 토큰에 특정 로직이 있습니다. 이 로직은 최상위 링크가 아닌 경우(예: 목록, 인용 블록 등 안에 있지 않은 경우)에 링크를 인라인 원박스(inline onebox)로 처리하도록 강제합니다.
@renato, <details> 내부에서는 여전히 원박스화(oneboxify)가 가능하지만요. 다른 블록 요소는 허용하지 않으면서 그 부분만 허용하는 것이 특히 이상해 보입니다. 그 이유는 무엇인가요?
명시적인 이유는 없으며, 단순히 markdown-it이 원시 HTML을 평탄한 방식으로 인식하기 때문입니다. 태그가 열리고 닫히는 것을 바탕으로 중첩 구조를 추론하지 않습니다.
Raw Html 노드
최상위 레벨 onebox
Raw Html 노드
@renato, CSS가 URI를 캡슐화하는 요소를 블록 요소로 정의하는 한, 원박스화가 이루어져야 한다고 생각합니다. 문제적인 경계 사례는 떠오르지 않습니다.