모바일에서 반응 선택기가 뷰포트 밖에 표시됨

여기서 설명된 것과 매우 유사한 문제를 겪고 있습니다:

반응(Reaction) 선택기가 뷰포트(viewport) 밖에 표시됩니다.

디버그 도구를 사용하여 해당 요소가 element.style {left: 89.6562px; top: 2375.19px; }를 받는다는 것을 확인했습니다. 이는 인라인 스타일(inline style)이기 때문에 다른 CSS를 조정하여 이를 변경하려는 시도는 성공하지 못했습니다.

화면을 높이 3000px 정도로 리사이즈하면 실제로 선택기를 볼 수 있습니다.

여기에서 문제의 원인으로 지목된 Jira 플러그인은 사용하지 않고 있습니다: Unable to use reactions on IOS/Mobile - #23 by Don

커스텀 반응(Custom Reactions) 테마 구성 요소를 사용 중입니다: Custom Discourse Reactions - #14 by Don 하지만 이것이 이러한 영향을 미칠 수 있다는 점은 이해가 되지 않습니다.

불행히도 현재 사용 중인 플러그인의 전체 목록을 제공할 수 없으며, 이는 관리자 권한이 없기 때문입니다.

하지만 확실하게 확인하기 위해 안전 모드에서 시도해 보는 것이 도움이 될 것입니다.

권한 없이 단순히 안전 모드를 시도해 볼 수 있다는 것을 알지 못했습니다.

그렇게 알려준 후, 저는 다음 사항을 관찰했습니다.

  • a) 리액션은 플러그인입니다. 따라서 모든 플러그인을 비활성화하면 문제가 해결되긴 하지만, 이는 도움이 되지 않는 방식이었습니다 ^^
  • b) 더 중요한 것은: 테마가 없으면 모든 것이 정상적으로 작동한다는 점입니다.

리액션과 상호작용할 수 있는 유일한 테마는

입니다.

몇 주 전에는 리액션이 확실히 정상적으로 작동했으며, 해당 테마는 수년 동안 변경된 적이 없습니다.

최근 Discourse 업데이트와 이상하게 상호작용하고 있거나, 우리의 설정에서 무언가가 깨진 것 같습니다. 더 자세히 알아보겠습니다.

추가로 조사를 해 보았습니다:

제 추측으로는, discourse 코어에 있는 이 커밋이 문제를 일으킨 것 같습니다:

특히 이 부분이:

테마 컴포넌트의 이 스타일링과 잘 동작하지 않는 것 같습니다:

개발 도구에서 이 CSS 라인을 비활성화해도 현재 표시 중인 리액션 피커의 위치는 변하지 않지만, 다음 피커는 올바르게 배치됩니다.

가장 좋은 방법은 해당 테마 컴포넌트의 개발자에게 연락하여 수정을 요청하는 것입니다. 아직 문제를 인지하지 못했을 수도 있습니다.

방금 이 문제에 대해 이슈를 생성했습니다.

테마 컴포넌트가 업데이트되었고 문제가 해결되었습니다.