Docs: Make Titles Flush Again 🚽

shoelace-style/webawesome

.wa-prose が h1 要素に付与する margin-block-start により、ページ上部のパンくずリスト直後に余計な余白が生まれていました。本 PR はその余白を取り除き、タイトルを左詰め(Flush) に戻すための CSS 修正を行います。変更はドキュメントのビジュアル一貫性を回復し、閲覧体験を向上させます。

背景

.wa-prose は本文フローを整えるために * + h1 { margin-block-start: var(--wa-space-l); } を適用しますが、ドキュメントページではパンくずリスト (.page-breadcrumbs) の直後に h1 が続くケースが多く、意図しない上部余白が出現しました。この余白はページタイトルが他要素と離れすぎて見える原因となり、デザインガイドラインに背いていました。そこで余白を除去し、ページタイトルを「Flush」状態に復元する必要がありました。

技術的な変更

変更前のスタイル (削除対象)

/* The breadcrumb is navigation, not prose flow — drop wa-prose's
   previous-sibling top margin on the page title that follows it. */
.page-breadcrumbs + h1 {
  margin-block-start: 0;
}

上記ルールは .page-breadcrumbs の直後に来る h1 の上余白を 0 にリセットしていましたが、スコープが限定的すぎてメンテナンス上の一貫性が欠けていました。そこでこのルールを削除し、より汎用的なタイトルセレクタへ置き換えました。

変更後のスタイル (追加)

h1.title {
  /* Siblings above own their block-end spacing — skip wa-prose's `* + h1` top margin. */
  margin-block-start: 0;

  wa-badge {
    vertical-align: middle;
    font-size: 1.5rem;
  }
}

h1.title に対し直接 margin-block-start: 0; を設定することで、.wa-prose が付与する上余白を上書きします。コメントで意図を明示し、同様の問題が再発した際の指針をコード上に残しています。結果として、ページタイトルは常にフラッシュ表示され、余計な空白が除去されます。

設計判断

余白除去のアプローチとして 汎用的なセレクタ (h1.title) を用いた点が重要です。個別の隣接セレクタ (.page-breadcrumbs + h1) を削除し、タイトル全般に対して一貫したスタイルを適用することで、将来的なレイアウト変更や新しい前置要素が追加された場合でも同様にフラッシュ表示が保たれます。また、コメントでデザイン意図を残すことで、他の開発者が意図を誤解せずに拡張できる設計となっています。

まとめ

今回の CSS 修正は、.wa-prose が付与するデフォルトの上余白を h1.title で上書きし、タイトルを左詰めに戻すシンプルかつスコープの広い解決策です。余計な余白が除去されたことで、ドキュメントページのビジュアル一貫性が回復し、ユーザ体験が向上します。

記事メタデータ

Generated by:
gpt-oss-120b for DiffDaily
LLM Trace:
bcf1fc70

この記事はAIによって自動生成されています。内容の正確性については、必ずソースコードやPRを確認してください。

品質レビュー結果

Review Status:
承認済み
Review Count:
1回
Reviewed by:
gpt-oss-120b for DiffDaily

Review Criteria:

記事構成 ✓ PASS

Title, Context, Technical Detailの存在と明確さ

リード文、背景、技術的詳細、設計判断(任意)とまとめが明確に分かれており、総論→各論→結論の構成が取られています。

カスタムMarkdown構文 ✓ PASS

シンタックスハイライト・GitHubリンク記法の正確性

コードブロックは `css:ファイルパス` 形式で正しく記述され、PRリンクは `[PR #2500](URL)` で正しくリンク化されています。

対象読者への適合性 ✓ PASS

エンジニア向けの適切な技術レベルと表現

内容はCSS変更に関する実装的な説明で、エンジニア向けとして適切です。初心者向けの過剰な解説はありません。

パラグラフ・ライティング ✓ PASS

トピックセンテンス・1段落1トピック・段落長

各セクションは総論パラグラフ、具体的説明、結論パラグラフで構成され、1文目がトピックセンテンスになっています。段落は1トピックに絞られ、長さも適切です。

Diff内容との照合 ✓ PASS

コードブロックとDiff内容の一致

記事中のコードブロックはDiffに記載された削除・追加内容と完全に一致しています。ファイルパスも合致しています。

技術用語の正確性 ✓ PASS

技術用語の正確な使用

`.wa-prose`、`margin-block-start`、`h1.title` などの用語はPRで使用されているものと一致し、誤用はありません。

説明の技術的正確性 ✓ PASS

技術的主張の正確性と論理性

技術的な変更の目的と効果はPRの記述と合致しており、因果関係も正しく説明されています。

事実の突合 ✓ PASS

PR情報による主張の裏付け(ハルシネーション検出)

記事の全ての主張はPRタイトル、説明、Diffに裏付けられており、根拠のない推測はありません。

数値・固有名詞の確認 ✓ PASS

PR番号・コミットID・バージョン等の正確性

PR番号#2500のみが記載されており、正確です。その他数値・固有名詞の誤りはありません。

タイトル・説明との一致 ✓ PASS

記事タイトル・説明とPR内容の一致

記事タイトルはPRタイトルと完全に一致しています。

外部知識の正確性 ✓ PASS

PRに記載のない外部知識(LTS、サポート状況など)の不使用

記事にPRに無関係なバージョン情報やリリース日程などの外部知識は含まれていません。

時間表現の正確性 ✓ PASS

時間表現がPR情報と一致しているか

時間表現の歪曲はなく、PRの記述と整合しています。