Files
Aislo/ui_template/ui_template_resizer.css
eomsangdonandClaude Opus 5 c8aaafcb54 fix(B05): 유토곡선 리사이저 TDZ 크래시로 페이지 진입 불가 수정 + 표시선 2px
원인: createPanelResizer가 생성 중 세션 저장 높이를 복원하며 onResize →
syncHandlePosition을 부르는데 'open'(let) 선언이 그 아래라 TDZ ReferenceError로
B05 렌더 전체가 죽었다. 저장된 높이가 있는 브라우저에서만 재현돼(새 세션 테스트는
통과) 사용자 환경에서만 접속 불가로 나타났다. 상태 선언을 리사이저 생성 앞으로 이동.

- 리사이저 상시 표시선 1px→2px, hover/드래그 3px→4px(2026-08-04 사용자 지시)

검증: masshaul-open=true + height=320 세션 상태로 진입 — 본문 렌더, 오버레이 320px
복원, 오류 0.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-04 19:37:46 +09:00

74 lines
1.8 KiB
CSS

/* 공통 스플리터(드래그 리사이저) — 패널 경계에 얹는 얇은 손잡이.
레이아웃을 밀지 않도록 경계 위에 절대배치한다.
조절 가능한 패널이 여러 곳(B05 3곳·B06 1곳)인데 hover 전에는 보이지 않아 구분이
안 됐다(2026-08-04 사용자 지시) — 손잡이 테두리와 같은 강조색(--panel-handle-border)
의 **얇은 줄을 상시 표시**하고, 얹거나 끌 때 굵어진다. 히트 영역(6px)은 그대로다. */
.ui-resizer {
position: absolute;
z-index: 1;
background: transparent;
touch-action: none;
}
/* 상시 보이는 얇은 표시줄 — 히트 영역 가운데 1px. */
.ui-resizer::before {
content: "";
position: absolute;
background: var(--panel-handle-border, var(--color-primary));
opacity: 0.75;
transition:
opacity var(--transition-fast),
background var(--transition-fast);
}
.ui-resizer--vertical::before {
top: 50%;
right: 0;
left: 0;
height: 2px;
transform: translateY(-50%);
}
.ui-resizer--horizontal::before {
top: 0;
bottom: 0;
left: 50%;
width: 2px;
transform: translateX(-50%);
}
.ui-resizer:hover::before,
.ui-resizer.is-dragging::before {
opacity: 1;
}
.ui-resizer--vertical:hover::before,
.ui-resizer--vertical.is-dragging::before {
height: 4px;
}
.ui-resizer--horizontal:hover::before,
.ui-resizer--horizontal.is-dragging::before {
width: 4px;
}
/* 위아래로 끌어 높이를 조절 — 패널 위쪽 경계에 가로로 눕는다. */
.ui-resizer--vertical {
top: -3px;
right: 0;
left: 0;
height: 6px;
cursor: ns-resize;
}
/* 좌우로 끌어 폭을 조절 — 패널 왼쪽 경계에 세로로 선다. */
.ui-resizer--horizontal {
top: 0;
bottom: 0;
left: -3px;
width: 6px;
cursor: ew-resize;
}