雑記記事からarticle要素を削除

雑記記事(このページとか)でarticle要素を使わないようにした。他のインデックス・ページでタグラインが入っているところに雑記記事のタイトルが入り、main要素にitemprop=articleBodyを割り当て、その直下に記事本文がくる。

多くのブログでは記事ページだと、最重要な見出しがロゴだったりする。そこはやはり記事のタイトルであった方がよいし、あるべきだと思う。それを改善するためにトリッキーな構造にしたけど、これはこれでセクショニング・ルートが見出しなしになってしまう。

  • body要素
    • header要素
      • ナビゲーション
        • ロゴ
        • 各ページへのメニュー
    • main要素
      • article要素
        • header要素
          • 記事投稿日時
          • 記事タイトル
        • itemprop=articleBody
          • 記事本文
        • 前の記事へのナビゲーション
    • footer要素
      • 雑多なリンク
      • 名前

そこで記事のタイトルをヘッダーに持っていった。そうなると、今度はarticle要素が見出しなしになるし、main要素以下にセクションがひとつだけにもなるので、えいやっと消した。

  • body要素
    • header要素
      • 記事投稿日時
      • 記事タイトル
      • ナビゲーション
        • ロゴ
        • 各ページへのメニュー
    • main要素
      • 記事本文
      • 前の記事へのナビゲーション
    • footer要素
      • 雑多なリンク
      • 名前

article要素だけでなく、記事タイトルなどをまとめて格納していたheader要素やitemprop=articleBodyのためだけのdiv要素もなくなる。ほぼ独立したウェブページとしての構造になって、異様にすっきりとした。body要素以下をどこかのsection要素にそのまま持って行ってもほぼ通用する。


このあたりの文書アウトラインを考えていたら、header要素の先頭にnav要素があって、その後にh1要素が来ると、仕様で言われる(Untitled Page)とかバリデーターで言われる[body element with no heading]になってしまうことを、突然、思い出した。全ページ共通の問題だった。ここら辺もちゃんと直した(つもり)。見た目の順序はFlexboxに頼っている。

これでv9.9系ということになる。他にはGoogle Closure CompilerからBabelになったりした。別にちょっと書く。またCNAMEファイルやrobots.txtファイルもMustache経由で生成するようにしたりも。ドメインを変える予定はないけど。