diff --git a/apps/site/gate-report.md b/apps/site/gate-report.md index 1b4358a..b8d4bc0 100644 --- a/apps/site/gate-report.md +++ b/apps/site/gate-report.md @@ -1,21 +1,204 @@ -# 게이트 리포트 — 2026-08-29 12:12 +# 게이트 리포트 — 2026-09-24 03:17 **전 항목 통과 — 배포 가능** ``` PASS L0 정적 — SKIP — checks.static=false -PASS 죽은 선택자 — SKIP — checks.deadCss=false -PASS twentyoz-products 토큰 위생 — 색 0/0건(0종)·radius 1종·토큰 1파일/73개 -PASS twentyoz-products SEO/meta — title 17자·desc 85자·OG✓·alt 0결 -PASS twentyoz-products/single 오버플로 — 320/375/390/768/1440 -PASS twentyoz-products/single h1 1줄 -PASS twentyoz-products/single 수축 없음 -PASS twentyoz-products/single 리듬·트랙 -PASS twentyoz-products/single 대비 AA -PASS twentyoz-products 스케일×폭 h1 — 최대 1줄 · scales 1/1.3 -PASS twentyoz-products 브랜드 1줄 -PASS twentyoz-products/single 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px -PASS twentyoz-products/single 왼쪽 인셋 — 최소 텍스트 시작 20px +PASS gaon-lms 죽은 선택자 — 2개 CSS × 2개 HTML·JS 문서(무시 2접두사) +PASS dure-enrollment 죽은 선택자 — 2개 CSS × 2개 HTML·JS 문서(무시 2접두사) +PASS twentyoz-corp 죽은 선택자 — 2개 CSS × 2개 HTML·JS 문서(무시 2접두사) +PASS hannam-jari 죽은 선택자 — 1개 CSS × 2개 HTML·JS 문서(무시 2접두사) +PASS hannam-jari-admin 죽은 선택자 — 1개 CSS × 2개 HTML·JS 문서(무시 2접두사) +PASS griddle-club 죽은 선택자 — 1개 CSS × 4개 HTML·JS 문서(무시 2접두사) +PASS griddle-club-franchise 죽은 선택자 — 1개 CSS × 2개 HTML·JS 문서(무시 2접두사) +PASS gaon-lms 토큰 위생 — 색 0/0건(0종)·radius 1종·토큰 1파일/76개 +PASS dure-enrollment 토큰 위생 — 색 0/0건(0종)·radius 2종·토큰 1파일/73개 +PASS twentyoz-corp 토큰 위생 — 색 0/0건(0종)·radius 1종·토큰 1파일/73개 +PASS hannam-jari 토큰 위생 — 색 64/64건(49종)·radius 2/2종·토큰 2파일/64개 +PASS hannam-jari-admin 토큰 위생 — 색 254/256건(114종)·radius 14/15종·토큰 1파일/56개 +PASS griddle-club 토큰 위생 — 색 35/41건(28종)·radius 3/6종·토큰 1파일/39개 +PASS griddle-club-franchise 토큰 위생 — 색 21/26건(17종)·radius 0/0종·토큰 1파일/39개 +PASS gaon-lms SEO/meta — title 18자·desc 65자·OG✓·alt 누락 0 · 장식(alt="") 0 +PASS gaon-lms/dashboard 오버플로 — 320/375/390/768/1440 +PASS gaon-lms/dashboard h1 보임 — 1줄(줄수 계약 없음) +PASS gaon-lms/dashboard 수축 없음 +PASS gaon-lms/dashboard 리듬·트랙 +PASS gaon-lms/dashboard 대비 AA +PASS gaon-lms/students 오버플로 — 320/375/390/768/1440 +PASS gaon-lms/students h1 보임 — 1줄(줄수 계약 없음) +PASS gaon-lms/students 수축 없음 +PASS gaon-lms/students 리듬·트랙 +PASS gaon-lms/students 대비 AA +PASS gaon-lms/attendance 오버플로 — 320/375/390/768/1440 +PASS gaon-lms/attendance h1 보임 — 1줄(줄수 계약 없음) +PASS gaon-lms/attendance 수축 없음 +PASS gaon-lms/attendance 리듬·트랙 +PASS gaon-lms/attendance 대비 AA +PASS gaon-lms/grades 오버플로 — 320/375/390/768/1440 +PASS gaon-lms/grades h1 보임 — 1줄(줄수 계약 없음) +PASS gaon-lms/grades 수축 없음 +PASS gaon-lms/grades 리듬·트랙 +PASS gaon-lms/grades 대비 AA +PASS gaon-lms/files 오버플로 — 320/375/390/768/1440 +PASS gaon-lms/files h1 보임 — 1줄(줄수 계약 없음) +PASS gaon-lms/files 수축 없음 +PASS gaon-lms/files 리듬·트랙 +PASS gaon-lms/files 대비 AA +PASS gaon-lms/calendar 오버플로 — 320/375/390/768/1440 +PASS gaon-lms/calendar h1 보임 — 1줄(줄수 계약 없음) +PASS gaon-lms/calendar 수축 없음 +PASS gaon-lms/calendar 리듬·트랙 +PASS gaon-lms/calendar 대비 AA +PASS gaon-lms/counsel 오버플로 — 320/375/390/768/1440 +PASS gaon-lms/counsel h1 보임 — 1줄(줄수 계약 없음) +PASS gaon-lms/counsel 수축 없음 +PASS gaon-lms/counsel 리듬·트랙 +PASS gaon-lms/counsel 대비 AA +PASS gaon-lms/report 오버플로 — 320/375/390/768/1440 +PASS gaon-lms/report h1 보임 — 1줄(줄수 계약 없음) +PASS gaon-lms/report 수축 없음 +PASS gaon-lms/report 리듬·트랙 +PASS gaon-lms/report 대비 AA +PASS gaon-lms/notice 오버플로 — 320/375/390/768/1440 +PASS gaon-lms/notice h1 보임 — 1줄(줄수 계약 없음) +PASS gaon-lms/notice 수축 없음 +PASS gaon-lms/notice 리듬·트랙 +PASS gaon-lms/notice 대비 AA +PASS gaon-lms 스케일×폭 h1 — 줄수 정보 375@1x:1줄, 375@1.3x:1줄, 390@1x:1줄, 390@1.3x:1줄 +PASS gaon-lms 브랜드 줄바꿈 없음 — 텍스트 블록 1개, 각 1줄 +PASS gaon-lms/dashboard 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS gaon-lms/students 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS gaon-lms/attendance 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS gaon-lms/grades 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS gaon-lms/files 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS gaon-lms/calendar 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS gaon-lms/counsel 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS gaon-lms/report 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS gaon-lms/notice 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS gaon-lms/dashboard axe — WCAG 2.x AA 위반 0건 +PASS gaon-lms/students axe — WCAG 2.x AA 위반 0건 +PASS gaon-lms/attendance axe — WCAG 2.x AA 위반 0건 +PASS gaon-lms/grades axe — WCAG 2.x AA 위반 0건 +PASS gaon-lms/files axe — WCAG 2.x AA 위반 0건 +PASS gaon-lms/calendar axe — WCAG 2.x AA 위반 0건 +PASS gaon-lms/counsel axe — WCAG 2.x AA 위반 0건 +PASS gaon-lms/report axe — WCAG 2.x AA 위반 0건 +PASS gaon-lms/notice axe — WCAG 2.x AA 위반 0건 +PASS gaon-lms/dashboard 왼쪽 인셋 — 최소 텍스트 시작 16px +PASS gaon-lms/students 왼쪽 인셋 — 최소 텍스트 시작 15px +PASS gaon-lms/attendance 왼쪽 인셋 — 최소 텍스트 시작 16px +PASS gaon-lms/grades 왼쪽 인셋 — 최소 텍스트 시작 16px +PASS gaon-lms/files 왼쪽 인셋 — 최소 텍스트 시작 16px +PASS gaon-lms/calendar 왼쪽 인셋 — 최소 텍스트 시작 16px +PASS gaon-lms/counsel 왼쪽 인셋 — 최소 텍스트 시작 16px +PASS gaon-lms/report 왼쪽 인셋 — 최소 텍스트 시작 16px +PASS gaon-lms/notice 왼쪽 인셋 — 최소 텍스트 시작 16px +PASS dure-enrollment SEO/meta — title 15자·desc 71자·OG✓·alt 누락 0 · 장식(alt="") 0 +PASS dure-enrollment/catalog 오버플로 — 320/375/390/768/1440 +PASS dure-enrollment/catalog h1 보임 — 1줄(줄수 계약 없음) +PASS dure-enrollment/catalog 수축 없음 +PASS dure-enrollment/catalog 리듬·트랙 +PASS dure-enrollment/catalog 대비 AA +PASS dure-enrollment/starred 오버플로 — 320/375/390/768/1440 +PASS dure-enrollment/starred h1 보임 — 1줄(줄수 계약 없음) +PASS dure-enrollment/starred 수축 없음 +PASS dure-enrollment/starred 리듬·트랙 +PASS dure-enrollment/starred 대비 AA +PASS dure-enrollment/enrollments 오버플로 — 320/375/390/768/1440 +PASS dure-enrollment/enrollments h1 보임 — 1줄(줄수 계약 없음) +PASS dure-enrollment/enrollments 수축 없음 +PASS dure-enrollment/enrollments 리듬·트랙 +PASS dure-enrollment/enrollments 대비 AA +PASS dure-enrollment/credits 오버플로 — 320/375/390/768/1440 +PASS dure-enrollment/credits h1 보임 — 1줄(줄수 계약 없음) +PASS dure-enrollment/credits 수축 없음 +PASS dure-enrollment/credits 리듬·트랙 +PASS dure-enrollment/credits 대비 AA +PASS dure-enrollment/archive 오버플로 — 320/375/390/768/1440 +PASS dure-enrollment/archive h1 보임 — 1줄(줄수 계약 없음) +PASS dure-enrollment/archive 수축 없음 +PASS dure-enrollment/archive 리듬·트랙 +PASS dure-enrollment/archive 대비 AA +PASS dure-enrollment/notices 오버플로 — 320/375/390/768/1440 +PASS dure-enrollment/notices h1 보임 — 1줄(줄수 계약 없음) +PASS dure-enrollment/notices 수축 없음 +PASS dure-enrollment/notices 리듬·트랙 +PASS dure-enrollment/notices 대비 AA +PASS dure-enrollment 스케일×폭 h1 — 줄수 정보 375@1x:1줄, 375@1.3x:1줄, 390@1x:1줄, 390@1.3x:1줄 +PASS dure-enrollment 브랜드 줄바꿈 없음 — 텍스트 블록 1개, 각 1줄 +PASS dure-enrollment/catalog 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS dure-enrollment/starred 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS dure-enrollment/enrollments 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS dure-enrollment/credits 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS dure-enrollment/archive 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS dure-enrollment/notices 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS dure-enrollment/catalog axe — WCAG 2.x AA 위반 0건 +PASS dure-enrollment/starred axe — WCAG 2.x AA 위반 0건 +PASS dure-enrollment/enrollments axe — WCAG 2.x AA 위반 0건 +PASS dure-enrollment/credits axe — WCAG 2.x AA 위반 0건 +PASS dure-enrollment/archive axe — WCAG 2.x AA 위반 0건 +PASS dure-enrollment/notices axe — WCAG 2.x AA 위반 0건 +PASS dure-enrollment/catalog 왼쪽 인셋 — 최소 텍스트 시작 24px +PASS dure-enrollment/starred 왼쪽 인셋 — 최소 텍스트 시작 24px +PASS dure-enrollment/enrollments 왼쪽 인셋 — 최소 텍스트 시작 24px +PASS dure-enrollment/credits 왼쪽 인셋 — 최소 텍스트 시작 24px +PASS dure-enrollment/archive 왼쪽 인셋 — 최소 텍스트 시작 24px +PASS dure-enrollment/notices 왼쪽 인셋 — 최소 텍스트 시작 24px +PASS twentyoz-corp SEO/meta — title 17자·desc 80자·OG✓·alt 누락 0 · 장식(alt="") 0 +PASS twentyoz-corp/single 오버플로 — 320/375/390/768/1440 +PASS twentyoz-corp/single h1 보임 — 1줄(줄수 계약 없음) +PASS twentyoz-corp/single 수축 없음 +PASS twentyoz-corp/single 리듬·트랙 +PASS twentyoz-corp/single 대비 AA +PASS twentyoz-corp 스케일×폭 h1 — 줄수 정보 375@1x:1줄, 375@1.3x:1줄, 390@1x:1줄, 390@1.3x:1줄 +PASS twentyoz-corp 브랜드 줄바꿈 없음 — 텍스트 블록 1개, 각 1줄 +PASS twentyoz-corp/single 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS twentyoz-corp/single axe — WCAG 2.x AA 위반 0건 +PASS twentyoz-corp/single 왼쪽 인셋 — 최소 텍스트 시작 20px +PASS hannam-jari SEO/meta — title 19자·desc 75자·OG✓·alt 누락 0 · 장식(alt="") 0 +PASS hannam-jari/single 오버플로 — 320/375/390/768/1440 +PASS hannam-jari/single h1 최대 2줄 — 2줄 +PASS hannam-jari/single 수축 없음 +PASS hannam-jari/single 리듬·트랙 +PASS hannam-jari/single 대비 AA +PASS hannam-jari 스케일×폭 h1 — 줄수 정보 375@1x:2줄, 375@1.3x:2줄, 390@1x:2줄, 390@1.3x:2줄 +PASS hannam-jari 브랜드 줄바꿈 없음 — 텍스트 블록 1개, 각 1줄 +PASS hannam-jari/single 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS hannam-jari/single axe — WCAG 2.x AA 위반 0건 +PASS hannam-jari/single 왼쪽 인셋 — 최소 텍스트 시작 16px +PASS hannam-jari-admin SEO/meta — title 18자·desc 67자·OG✓·alt 누락 0 · 장식(alt="") 0 +PASS hannam-jari-admin/single 오버플로 — 320/375/390/768/1440 +PASS hannam-jari-admin/single h1 보임 — 1줄(줄수 계약 없음) +PASS hannam-jari-admin/single 수축 없음 +PASS hannam-jari-admin/single 리듬·트랙 +PASS hannam-jari-admin/single 대비 AA +PASS hannam-jari-admin 스케일×폭 h1 — 줄수 정보 375@1x:1줄, 375@1.3x:1줄, 390@1x:1줄, 390@1.3x:1줄 +PASS hannam-jari-admin 브랜드 줄바꿈 없음 — 텍스트 블록 1개, 각 1줄 +PASS hannam-jari-admin/single 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS hannam-jari-admin/single axe — WCAG 2.x AA 위반 0건 +PASS hannam-jari-admin/single 왼쪽 인셋 — 최소 텍스트 시작 12px +PASS griddle-club SEO/meta — title 20자·desc 85자·OG✓·alt 누락 0 · 장식(alt="") 0 +PASS griddle-club/single 오버플로 — 320/375/390/768/1440 +PASS griddle-club/single h1 최대 2줄 — 2줄 +PASS griddle-club/single 수축 없음 +PASS griddle-club/single 리듬·트랙 +PASS griddle-club/single 대비 AA +PASS griddle-club 스케일×폭 h1 — 줄수 정보 375@1x:2줄, 375@1.3x:2줄, 390@1x:2줄, 390@1.3x:2줄 +PASS griddle-club 브랜드 줄바꿈 없음 — 텍스트 블록 1개, 각 1줄 +PASS griddle-club/single 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS griddle-club/single axe — WCAG 2.x AA 위반 0건 +PASS griddle-club/single 왼쪽 인셋 — 최소 텍스트 시작 18px +PASS griddle-club-franchise SEO/meta — title 25자·desc 95자·OG✓·alt 누락 0 · 장식(alt="") 0 +PASS griddle-club-franchise/single 오버플로 — 320/375/390/768/1440 +PASS griddle-club-franchise/single h1 최대 2줄 — 2줄 +PASS griddle-club-franchise/single 수축 없음 +PASS griddle-club-franchise/single 리듬·트랙 +PASS griddle-club-franchise/single 대비 AA +PASS griddle-club-franchise 스케일×폭 h1 — 줄수 정보 375@1x:2줄, 375@1.3x:2줄, 390@1x:2줄, 390@1.3x:2줄 +PASS griddle-club-franchise 브랜드 줄바꿈 없음 — 텍스트 블록 1개, 각 1줄 +PASS griddle-club-franchise/single 터치타깃 — 컨트롤 ≥44px·인라인 ≥24px +PASS griddle-club-franchise/single axe — WCAG 2.x AA 위반 0건 +PASS griddle-club-franchise/single 왼쪽 인셋 — 최소 텍스트 시작 17px PASS L3 시각 회귀 — SKIP — checks.visual=false PASS L4 WebKit — SKIP — checks.webkit=false ``` diff --git a/apps/site/public/work/dure-enrollment/index.html b/apps/site/public/work/dure-enrollment/index.html index 20673b3..99671de 100644 --- a/apps/site/public/work/dure-enrollment/index.html +++ b/apps/site/public/work/dure-enrollment/index.html @@ -149,7 +149,7 @@
합계 0학점 / 18
-정정 기간은 3/9–3/13입니다. 18학점 초과 신청은 학부 사무실 승인이 필요하고, 두 번 결석하면 탈강 처리됩니다 — 변경은 이 화면에서 할 수 있습니다.
@@ -586,7 +586,9 @@ const renderEnrollments = () => { { const list = COURSES.filter((c) => enrolled.has(c.id)); - $("en-gauge").style.width = Math.round((list.reduce((a, c) => a + c.credits, 0) / MAX_CREDITS) * 100) + "%"; + const gaugePct = Math.round((list.reduce((a, c) => a + c.credits, 0) / MAX_CREDITS) * 100); + $("en-gauge").style.width = gaugePct + "%"; + $("en-gauge-wrap").setAttribute("aria-label", `신청 학점 진행률, 최대 ${MAX_CREDITS}학점 중 ${gaugePct}%`); const credits = list.reduce((a, c) => a + c.credits, 0); $("en-stats").innerHTML = `