Skip to content

fix: ヘッダーとサイドバーの境界線重なり問題を修正#99

Merged
okash1n merged 4 commits into
mainfrom
fix/98-header-sidebar-overlap
Jan 28, 2026
Merged

fix: ヘッダーとサイドバーの境界線重なり問題を修正#99
okash1n merged 4 commits into
mainfrom
fix/98-header-sidebar-overlap

Conversation

@okash1n

@okash1n okash1n commented Jan 28, 2026

Copy link
Copy Markdown
Contributor

概要

ブログページなどでサイドバーの境界線がヘッダー領域を突き抜けて表示される視覚的な不具合を修正しました。

Closes #98

変更内容

1. ヘッダーのz-index設定

  • .VPNavBarにz-index: 30を設定(サイドバーのz-index: 25より上位)
  • ヘッダーが常に最前面に表示されるように保証

2. 背景色の明示的な設定

  • スクロール時にコンテンツが透過して見える問題を解消
  • ライトモード: #ffffff !important
  • ダークモード: #1b1b1f !important

3. サイドバーの位置調整

  • サイドバーをヘッダーの高さ分下にオフセット
    • top: var(--vp-nav-height, 64px) !important
    • height: calc(100vh - var(--vp-nav-height, 64px)) !important
  • サイドバーに右側境界線を追加: border-right: 1px solid var(--vp-c-divider)

4. ヘッダー境界線の配置最適化

  • ワイド画面での境界線の太さ不一致問題を解消
  • 境界線を.VPNavBarからコンテンツ幅に合わせた要素に移動
    • PC (960px+): .VPNavBar .container
    • タブレット (640-959px): .VPNavBar .wrapper
    • モバイル (<640px): .VPNavBar .wrapper

検証済み

  • デスクトップ (1920x1080) - ライトモード
  • デスクトップ (1920x1080) - ダークモード
  • タブレット (768x1024) - ライトモード
  • モバイル (375x667) - ライトモード
  • ブログページ (/blog/)
  • 要求事項ページ (/requirements/)
  • 管理策ページ (/controls/)
  • トップページ (/)
  • スクロール時の透過問題解消

スクリーンショット

すべての検証において、以下が確認されました:

  • ヘッダーとサイドバーの境界線が適切に分離されている
  • ヘッダーが独立したコンポーネントとして機能している
  • 明確な視覚的階層(ヘッダー > サイドバー)が確立されている
  • 各ビューポートサイズで境界線が適切な幅で表示されている

テストプラン

  • 本番デプロイ前に各ページで視覚的確認
  • 異なるブラウザ(Chrome、Firefox、Safari)での動作確認
  • レスポンシブデザインの確認(各ブレークポイント)

- ヘッダーにz-index: 30を設定してサイドバーより上位に配置
- サイドバーの開始位置をヘッダーの高さ分下にオフセット
- ヘッダーとサイドバーに境界線を追加して視覚的分離を改善

Closes #98
ブログページなどでサイドバーの境界線がヘッダー領域を突き抜けて表示される問題を修正しました。

変更内容:
- ヘッダーのz-indexを30に設定してサイドバー(z-index: 25)より上に配置
- ヘッダーに明示的な背景色を設定(透過防止)
  - ライトモード: #ffffff
  - ダークモード: #1b1b1f
- サイドバーの位置をヘッダーの高さ分調整
  - top: var(--vp-nav-height, 64px)
  - height: calc(100vh - var(--vp-nav-height, 64px))
- サイドバーに右側境界線を追加
- ヘッダーの下部境界線を各メディアクエリ内のコンテナ/ラッパーに移動
  - PC (960px+): .VPNavBar .container
  - タブレット (640-959px): .VPNavBar .wrapper
  - モバイル (<640px): .VPNavBar .wrapper

これにより、ヘッダーが全ページで独立したコンポーネントとして機能し、
明確な視覚的階層(ヘッダー > サイドバー)が確立されます。
サイドバー内の .curtain 要素が position: sticky で top: -64px に
設定されていたため、サイドバーの背景色を持ちながらヘッダー領域に
侵入していました。

この要素を display: none にすることで問題を解決しました。
- サイドバーグループ間の区切り線を削除
- ヘッダーボーダーを1pxに設定
- divider要素の非表示ルールを追加
- コンテンツエリアの垂直線を追加
- ロゴサイズ調整のメディアクエリを整理
@okash1n okash1n merged commit dee0b33 into main Jan 28, 2026
1 check passed
@okash1n okash1n deleted the fix/98-header-sidebar-overlap branch January 28, 2026 17:28
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