From f3c843655166616ab9959f7c93283788c6bbb6e4 Mon Sep 17 00:00:00 2001 From: umsangdon Date: Tue, 13 Oct 2026 18:50:11 +0900 Subject: [PATCH] =?UTF-8?q?fix(b05,b06):=20[=EA=B5=AC=EC=A1=B0=EB=AC=BC=20?= =?UTF-8?q?=EC=A0=84=EC=B2=B4=20=EC=82=AD=EC=A0=9C]=20=EB=8B=A8=EC=B6=94?= =?UTF-8?q?=20=EB=86=92=EC=9D=B4=20=3D=20=EC=9C=84=20=EA=B5=AC=EC=A1=B0?= =?UTF-8?q?=EB=AC=BC=20=EB=8B=A8=EC=B6=94=EC=99=80=20=EA=B0=99=EA=B2=8C=20?= =?UTF-8?q?=E2=80=94=20=EA=B3=B5=EC=9A=A9=20--panel-control-h=20=EA=B7=9C?= =?UTF-8?q?=EC=B9=99=EC=97=90=20=EB=AA=A9=EB=A1=9D=20=EB=8B=A8=EC=B6=94=20?= =?UTF-8?q?=EB=B3=B4=ED=83=AC=20(313-2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 위 [추가] · [삭제] · [리셋]만 205-1 높이 규칙(--b05-control-h)을 받고 목록 맨 아래 단추는 빠져 34px · 위 26px - 같은 규칙 · 같은 변수에 `.b05-route__irregular-clear` 보탬(px 안 박음) · 위험 색 그대로 - 시험: test_313_clear_all 실제 브라우저 밝음 · 어두움 높이 같음(옛 26 · 34) Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_014utrjfoW831Vc5wJUd13kL --- .../B05_Profile_UI_Style_Structures.css | 9 ++-- resources/tester/test_313_clear_all.py | 49 +++++++++++++++++++ 2 files changed, 55 insertions(+), 3 deletions(-) diff --git a/B05_Profile/B05_Profile_UI_Style_Structures.css b/B05_Profile/B05_Profile_UI_Style_Structures.css index a874d14e7..640125d02 100644 --- a/B05_Profile/B05_Profile_UI_Style_Structures.css +++ b/B05_Profile/B05_Profile_UI_Style_Structures.css @@ -360,7 +360,8 @@ * 값은 theme `--panel-control-h` 한 곳(좌측 패널 공용 양식이 함께 씀 · 269). 기준은 조정창에서 옮겨 온 행의 * 컨트롤 높이(26px)다 — 사용자가 그 크기를 기준으로 정했다. */ .b05-structure-section, -.b05-drainage__facility { +.b05-drainage__facility, +.b05-route__irregular-clear { --b05-control-h: var(--panel-control-h); } @@ -588,7 +589,8 @@ } /* 「구조물 배치」 맨 아래 [추가] · [삭제] · [리셋] 줄(205-1) — 단추 높이 = 상자 안 작은 단추(`--b05-control-h`) · - * 폼이 길어도 스크롤 영역 아래 끝에 붙어 늘 보임(자리 고정 · 뒤 내용이 비치지 않게 불투명 배경) */ + * 폼이 길어도 스크롤 영역 아래 끝에 붙어 늘 보임(자리 고정 · 뒤 내용이 비치지 않게 불투명 배경) · + * 목록 맨 아래 [구조물 전체 삭제]도 같은 높이(313-2) */ .b05-structure-section .b05-route__irregular-actions { position: sticky; bottom: 0; @@ -596,7 +598,8 @@ background: var(--color-surface-raised); } -.b05-structure-section .b05-route__irregular-actions > button { +.b05-structure-section .b05-route__irregular-actions > button, +.b05-route__irregular-clear > button { box-sizing: border-box; height: var(--b05-control-h); min-height: 0; diff --git a/resources/tester/test_313_clear_all.py b/resources/tester/test_313_clear_all.py index 1ebfb4bb6..4e5285c56 100644 --- a/resources/tester/test_313_clear_all.py +++ b/resources/tester/test_313_clear_all.py @@ -91,3 +91,52 @@ def test_CSS_단추_줄(): css = _read("B05_Profile", "B05_Profile_UI_Style.css") assert ".b05-route__irregular-clear {" in css assert ".b05-route__irregular-clear .b05-route__irregular-btn {" in css + + +# ── 313-2 실제 브라우저(정적 쪽 · 서버 불필요) — 위 [삭제] 단추와 같은 높이 · 같은 위험 색 ── + +MARKUP = ( + "
" + "
" + "" + "" + "
" + "
    " + "
  • NO.1배수관
  • " + "
  • " + "
" +) + + +@pytest.mark.parametrize("theme", ["light", "dark"]) +def test_단추_높이_위_삭제와_같음(theme): + from playwright.sync_api import sync_playwright + + css = "".join( + p.read_text("utf-8") + for folder in ("ui_template", "B05_Profile", "B06_Section") + for p in sorted((ROOT / folder).glob("*.css")) + ) + html = ( + f"" + f"{MARKUP}" + ) + with sync_playwright() as p: + browser = p.chromium.launch(channel="msedge", headless=True) + page = browser.new_page() + page.set_content(html) + out = page.evaluate( + """() => ['top', 'clear'].map((id) => { + const el = document.getElementById(id); + return [el.getBoundingClientRect().height, getComputedStyle(el).color]; + })""" + ) + browser.close() + (top_h, top_color), (clear_h, clear_color) = out + assert top_h == clear_h, out # 두 단추 높이 px 같음(공용 --panel-control-h) + assert clear_color == top_color, out # 위험 색 꼴 그대로 + css_rule = _read("B05_Profile", "B05_Profile_UI_Style_Structures.css") + assert ".b05-route__irregular-clear > button {" in css_rule + assert "px" not in css_rule.split(".b05-route__irregular-clear {")[-1].split("}")[0]