Skip to content

[DONE] 저널 글 아래 목록이 721px 위에서 본문과 같은 자리에서 시작하고 끝난다 - #311

Merged
patternflow-bot merged 4 commits into
devfrom
claude/dev-pf-round138-pqbsck
Oct 27, 2026
Merged

patternflow-bot merged 4 commits into
devfrom
claude/dev-pf-round138-pqbsck

Conversation

@patternflow-bot

@patternflow-bot patternflow-bot commented Oct 27, 2026 •

Copy link
Copy Markdown

dev / https://claude.ai/code/session_01Gdqi6P6AxDQ2aovnj7Cctu

저널 글 아래 목록과 목록 쪽 맨 아래 줄이 첫 화면 바닥 규칙의 좌우 여백을 받아서, 글 아래 목록이 본문보다 1440 에서 4px, 721~900px 에서 64px 왼쪽에서 시작하고 그만큼 오른쪽으로 넘쳤어요. 머지하면 두 바닥 줄이 721px 위 어느 폭에서나 제 판의 글과 같은 자리에서 시작하고 끝나요. 폰 화면은 그대로예요.

좋아지는 것: 글 아래 목록이 본문과 같은 줄에 선다 — 태블릿 폭에서도 끝이 반듯하다

체크리스트

한 일

  • web/src/app/globals.css 의 .journal-article-footer 에 padding-left · padding-right 64px, .journal-index-footer 에 60px 를 줬어요. 둘은 <footer> 라서 첫 화면의 맨 footer 규칙(globals.css:888, 좌우 60px, 900px 아래 :913 에서 0)을 받고 있었어요. 64px 와 60px 는 위 판(.journal-article, .journal-panel)의 좌우 여백이에요.
  • 같은 파일의 @media (max-width: 720px) 에 두 바닥 줄의 좌우 여백 0 을 더했어요. 클래스 규칙은 footer 보다 세서, 이 줄이 없으면 폰에서도 64px 가 들어가요. 폰에선 전처럼 흰 판의 가장자리에 서요.
  • 위아래 여백은 그대로 맨 footer 규칙에서 와요.
  • web/src/components/journal/journalCss.test.ts 에 시험 셋을 더했어요. @media 를 걷은 규칙에서 두 바닥 줄의 좌우 여백이 위 판과 같은지, 720px 블록에서 둘 다 0 인지 봐요.

증거

dev 빌드와 이 브랜치 빌드를 next start 로 띄우고 /journal, /journal/en 과 거기서 잇는 글 74쪽을 360, 390, 640, 641, 720, 721, 800, 900, 901, 1024, 1440, 1920 에서 열었어요. 글 쪽은 .journal-context-list 의 왼쪽 · 오른쪽 끝을 .journal-reading(본문)과, 목록 쪽은 바닥 줄 첫 글자(「Patternflow · 2026」)의 왼쪽 끝을 .journal-post-list 와 견줬어요. 값은 바닥 줄 − 판 글, px 예요.

폭 dev · 글 아래 목록 왼쪽 / 오른쪽 이 브랜치 dev · 목록 쪽 바닥 줄 이 브랜치
360 · 390 · 640 · 641 · 720 −24 / +24 (74쪽 모두) −24 / +24 −24 −24
721 · 800 · 900 −64 / +64 (74쪽 모두) 0 / 0 −60 0
901 · 1024 · 1440 · 1920 −4 / +4 (74쪽 모두) 0 / 0 0 0

열두 폭 모두 scrollWidth 가 폭과 같았어요. 720px 아래 −24 는 흰 판의 가장자리라서 전후가 같아요.

글 아래 목록이 721~900px 에서 128px, 901px 위에서 8px 좁아져요. 370줄을 다시 세니 두 줄로 꺾인 제목은 721 에서 0 → 4 이고, 800 · 900 · 901 · 1024 · 1440 에선 앞뒤 모두 0 이었어요. 721 의 바닥 줄 높이 합은 31,802px 에서 31,891px 로 늘었어요. 날짜가 큰 번호 밑에 깔린 줄은 일곱 폭 모두 앞뒤 0 이고, 날짜 끝과 번호 사이 가장 좁은 곳(29.3px, 721 에선 43.3px)도 같아요.

폰 390 의 두 전후 PNG(글 쪽 맨 아래, /journal/en 맨 아래)는 바이트까지 같아요. 1440 의 /journal/en 도 같아요(그 폭에선 이미 60px 였어요).

새 시험을 dev 의 globals.css 에 돌리면

× journal footers > starts .journal-article-footer where the text in .journal-article starts, above 720px
  → expected [ NaN, NaN ] to deeply equal [ 64, 64 ]
× journal footers > starts .journal-index-footer where the text in .journal-panel starts, above 720px
  → expected [ NaN, NaN ] to deeply equal [ 60, 60 ]
× journal footers > keeps both at the panel's edge on a phone
  → expected [ NaN, NaN ] to deeply equal [ +0, +0 ]
Tests  3 failed | 8 passed (11)

셋째 시험은 dev 에서 폰 화면이 틀려서가 아니라, dev 가 폰 여백을 맨 footer 규칙으로 쥐고 있어서 빨개요. 고친 뒤엔 저널 규칙이 그 0 을 쥐어야 해요. 고친 뒤엔 Tests 11 passed (11) 예요.

다섯 검사(web/ 에서):

npm ci                              → exit 0
npm run lint -- --max-warnings=0    → exit 0
npm run typecheck                   → exit 0 (tsc 둘 다)
npm run build                       → exit 0 (dev 판도, 이 브랜치 판도 처음 한 번에)
npm run check:ci                    → exit 0 · Test Files 130 passed (130) · Tests 1603 passed (1603)
                                      drift 14 passed, links-absolute · roadmap skipped
npm run check:voice                 → check:voice: nothing found
npm run check:voice -- -            → (PR 본문) check:voice: nothing found

roadmap 은 gh 가 원래 레포(engmung/Patternflow)를 읽지 못해(HTTP 403) 건너뛰었어요.

PR 의 검사(head 9c81519): Drift checks | completed | success, Web CI | completed | success. 겹침 기다리기는 「안 겹친다」 였어요.

전후 사진은 「머리아파」 글 쪽과 /journal/en 을 맨 아래까지 내린 화면이에요. 800 에서 dev 의 목록은 흰 판 끝(48)에 서고, 이 브랜치는 본문 위 가는 줄(112)과 같은 자리에 서요.

태블릿 800 · 머리아파 · dev
태블릿 800 · 머리아파 · 이 브랜치
데스크톱 1440 · 머리아파 · dev
데스크톱 1440 · 머리아파 · 이 브랜치
폰 390 · 머리아파 · dev
폰 390 · 머리아파 · 이 브랜치
태블릿 800 · Journal · dev
태블릿 800 · Journal · 이 브랜치

실행법

cd web
npx vitest run src/components/journal/journalCss.test.ts
npm run build && npx next start -p 3100
# 800px 로 /journal/headache 를 열고 맨 아래로 내리면, 목록이 본문 위 가는 줄과 같은 폭으로 선다

가정

  • 136 · 137바퀴가 「다음 바퀴」 1번으로 둔 감을 골랐어요. 같은 감을 오늘 dev 빌드에서 다시 쟀고, 1440 의 4px 와 721~900 의 64px 가 그대로였어요.
  • 137바퀴([DONE] 데스크톱에서 저널 글 아래 목록의 날짜가 큰 번호에 가리지 않는다 #310)도 .journal-context-list 를 고쳤지만 줄 안의 번호 자리(padding-right)였어요. 이번엔 바닥 줄 상자의 좌우 여백이라 같은 주제가 아니라고 봤어요. 그 규칙은 그대로예요.
  • 720px 아래는 그대로 두었어요. 폰에선 두 바닥 줄이 흰 판의 가장자리에 서서, 판 글(48)보다 24px 밖이에요. 그 폭은 저널 제 브레이크포인트 안에서 한결같고, 판 글에 맞추면 390px 에서 목록이 48px 좁아져요. 그래서 폰은 「판 가장자리」, 721px 위는 「판 글」 로 갈랐어요. 901px 에서 뛰던 자리는 첫 화면 규칙의 브레이크포인트였어요.
  • 64px 와 60px 는 판의 값을 옮겨 적었어요. 저널엔 판 여백 토큰이 없어서 새로 만들지 않았어요. 시험이 두 값을 판의 값과 견줘서, 판 여백이 바뀌면 바닥 줄도 따라가야 시험이 지나요.
  • 721px 에서 제목 넷이 두 줄로 꺾여요. 그 폭에선 목록이 본문과 같은 497px 가 되고, 번호 자리 104px 를 빼면 제목과 날짜 칸이 좁아서예요. 800px 부터 잰 폭에선 꺾이는 제목이 없었어요.
  • 표 밖: 없음.

Changelog

Web

  • The footers under a journal post and the journal index line up with the text above them. As <footer>s they took the front page's 60px sides from 901px and none below, so the list under a post started 4px left of the post's text on a desktop and 64px left of it from 721 to 900px. Each now keeps its own panel's side padding; phones are unchanged.

경험

언제: 저널 쪽 높이로 CSS 고침의 앞뒤를 견줄 때
교훈: domcontentloaded 뒤엔 그림이 덜 실려 같은 CSS 에서도 쪽 높이 합이 흔들려요. 쪽 전체 대신 바꾼 상자(getBoundingClientRect().height)의 합을 견줘요
근거: #311 에서 390px 화면이 바뀌지 않는 세 판(dev, 규칙을 끼운 dev, 이 브랜치)으로 74쪽을 재니 쪽 높이 합이 468,912 · 469,940 · 470,849 로 달랐고, 바닥 줄 높이 합은 세 번 다 36,593 이었어요

바퀴

바퀴 138 · 후보: 저널 — 고친 곳: web/src/app/globals.css(.journal-article-footer, .journal-index-footer, 720px 블록) · 까닭: 저널 바닥 줄이 첫 화면 footer 규칙의 좌우 여백을 받아 글 아래 목록이 본문보다 1440 에서 4px, 721~900 에서 64px 왼쪽에서 시작했다(74쪽 모두)

다음 바퀴

  • 글 쪽에 <main> 이 없다: ArticleLayout.tsx:49 가 <article>, :90 이 <footer> 를 바로 그려요. 목록 쪽은 <main className="journal-index"> 예요. 133 · 135바퀴가 axe 로 글 쪽마다 landmark-one-main 을 봤어요.
  • 글 쪽 OG 그림의 날짜: app/journal/[slug]/opengraph-image.tsx:54 가 post?.date 를 그대로 찍어서 공유 카드에 2026-05-14T01:30:00+09:00 이 나와요. 134바퀴가 서울로 맞춘 formatJournalDate 를 읽으면 돼요.
  • 안 쓰는 저널 규칙: .journal-list-number(globals.css:1144, :1321), .journal-figure, .journal-figure-wide, .journal-figure-full 과 그 img, video, figcaption(:1638~:1652, :1707), .journal-index-thumb span(:1242), .journal-cover-slot span(:1271)을 컴포넌트와 글 74개 어디서도 그리지 않아요(136바퀴가 셌어요).

https://claude.ai/code/session_01Gdqi6P6AxDQ2aovnj7Cctu


Generated by Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Gdqi6P6AxDQ2aovnj7Cctu
The front page's footer rule gave them 60px a side from 901px and 0 below,
so the list under a post sat 4px left of the text from 901px and 64px left
of it from 721 to 900.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Gdqi6P6AxDQ2aovnj7Cctu
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Gdqi6P6AxDQ2aovnj7Cctu
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Gdqi6P6AxDQ2aovnj7Cctu
@patternflow-bot patternflow-bot changed the title [WIP] 저널 한 곳을 더 다듬는다 (pf 138바퀴) [WIP] 저널 글 아래 목록이 721px 위에서 본문과 같은 자리에서 시작하고 끝난다 Oct 27, 2026
@patternflow-bot patternflow-bot changed the title [WIP] 저널 글 아래 목록이 721px 위에서 본문과 같은 자리에서 시작하고 끝난다 [DONE] 저널 글 아래 목록이 721px 위에서 본문과 같은 자리에서 시작하고 끝난다 Oct 27, 2026
@patternflow-bot
patternflow-bot marked this pull request as ready for review October 27, 2026 16:42
@patternflow-bot
patternflow-bot merged commit 5bb2d0f into dev Oct 27, 2026
2 checks passed
@patternflow-bot
patternflow-bot deleted the claude/dev-pf-round138-pqbsck branch October 27, 2026 16:43
engmung pushed a commit to engmung/Patternflow that referenced this pull request Oct 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants