Skip to content

feat(v1.2): 新規 .l-page Layout クラスで sticky footer 実装#201

Merged
shunei-web merged 1 commit into
v1.2from
feat/v1.2-l-page-sticky-footer
May 1, 2026
Merged

feat(v1.2): 新規 .l-page Layout クラスで sticky footer 実装#201
shunei-web merged 1 commit into
v1.2from
feat/v1.2-l-page-sticky-footer

Conversation

@shunei-web
Copy link
Copy Markdown
Collaborator

概要

しゅんえい指摘(2026-05-01 セッション 33): 404 等の短いコンテンツページでも footer をウィンドウ下部に配置。

mFLOCSS spec §5.4 Layout 層責任に整合する設計で、新規 .l-page Layout クラスとして実装。

変更内容

新規ファイル

  • src/assets/css/layout/l-page.css: ページ全体の骨格(display: flex; flex-direction: column; min-block-size: 100dvb;)+ .l-page > main { flex: 1; }

修正ファイル

  • src/assets/css/style.css: @import './layout/l-page.css' layer(layout); を layout セクション先頭に追加
  • src/assets/css/reset/reset.css: :where(body) から min-block-size: 100dvb 削除(Layout 層 .l-page に責任統一)
  • src/index.html / src/404.html / src/privacy/index.html: <body id="top"><body id="top" class="l-page">

設計根拠

  • Layout 層責任: mFLOCSS spec §5.4「ページの大枠を構成するブロック」= Layout 層の責任
  • Foundation 責任分散解消: reset.css の min-block-size: 100dvb は「ページ骨格の制御」であり Reset 層の責任域外。Layout 層に集約することで責任統一
  • sticky footer パターン: display: flex; flex-direction: column; min-block-size: 100dvb; + main { flex: 1; } は CSS 標準の sticky footer 実装

動作確認

  • ✅ 全 3 ページ(index / 404 / privacy): <body class="l-page"> 付与確認
  • ✅ ビルド CSS: @layer layout.l-page / .l-page > main ルール存在確認
  • ✅ ビルド CSS: @layer reset:where(body)margin: unset のみ(min-block-size 削除確認)
  • ✅ lint(CSS / JS / HTML)全 PASS
  • pnpm build 成功

テストチェックリスト

  • 404 ページ: コンテンツが少なくても footer がウィンドウ下部に配置
  • index ページ: 既存レイアウト崩れなし / sticky header 維持
  • privacy ページ: コンテンツ少なくても footer がウィンドウ下部
  • PC + SP viewport で各ページ目視確認

🤖 Generated with Claude Code

- src/assets/css/layout/l-page.css 新規(display: flex; flex-direction: column; min-block-size: 100dvb;)
- .l-page > main に flex: 1(子セレクタで main を stretch)
- src/assets/css/style.css に layout/l-page.css import 追加(layout セクション先頭)
- 全 3 ページ(404 / index / privacy)の body に class="l-page" 追加
- src/assets/css/reset/reset.css から min-block-size: 100dvb 削除(l-page に責任統一)

しゅんえい指摘(2026-05-01 セッション 33): 404 等の短いコンテンツページでも
footer をウィンドウ下部に配置。mFLOCSS spec §5.4 Layout 層責任に整合する設計を採択。

🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@cloudflare-workers-and-pages
Copy link
Copy Markdown

Deploying starter with  Cloudflare Pages  Cloudflare Pages

Latest commit: a615062
Status: ✅  Deploy successful!
Preview URL: https://6ad146d0.starter-20t.pages.dev
Branch Preview URL: https://feat-v1-2-l-page-sticky-foot.starter-20t.pages.dev

View logs

@shunei-web shunei-web merged commit 42f6f1b into v1.2 May 1, 2026
2 checks passed
@shunei-web shunei-web deleted the feat/v1.2-l-page-sticky-footer branch May 1, 2026 02:57
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.

1 participant