@kazuhito
Kazuhito Kidachi's Personal Web Site Since 2000

Re: h1要素は複数回使って良いのか!? HTML5.1に関するW3CとWHATWGの主張の違い

忙しさにかまけているうち、すっかり投稿のタイミングを逃してしまって、既に旧聞に属する話ではあるけれど、少し前に話題になったh1要素は複数回使って良いのか!? HTML5.1に関するW3CとWHATWGの主張の違い - Togetterまとめについて、アクセシビリティおじさんとして反応しておきたい。

各所で指摘されている通り、h1要素を複数回使うことについて、是か非かでいえば明確に「是」ですね。W3Cの策定する「HTML5」を使おうと、WHATWGの策定する「HTML Standard」を使おうと。ちなみにSEO上でも問題ないらしい。従い、この話題で論じられるべきは、アウトラインアルゴリズムを前提として見出し要素をマークアップすべきか否かでしょう。HTML 5.1の4.3.10.1. Creating an outlineには、以下の注記があります:

There are currently no known native implementations of the outline algorithm in graphical browsers or assistive technology user agents, although the algorithm is implemented in other software such as conformance checkers and browser extensions. Therefore the outline algorithm cannot be relied upon to convey document structure to users. Authors should use heading rank (h1-h6) to convey document structure.

英語わかんないって人は、HTML5 ドキュメントのセクションとアウトライン - HTML | MDNの冒頭で全く同じ英文に対する和訳が提供されているので、そちらをどうぞ:

現在、一般的なブラウザや支援技術のユーザエージェントでアウトラインアルゴリズムを実装したと知られているものはありませんが、適合性チェッカーなどのソフトウェアがアルゴリズムを実装しています。従ってアウトラインアルゴリズムを、ユーザにドキュメントの構造を伝えるものとしてあてにすることはできません。作者には、見出しの順位 (h1-h6) を使用してドキュメントの構造を伝えることを推奨します。

こういった状況から、目下アウトラインアルゴリズムは極めて「絵に描いた餅」に近いという認識なのですけど、それでもなおアウトラインアルゴリズムを前提に見出し要素を使いたければご自由にどうぞ、としか言えない。ただしその場合、意図した通りのアウトラインが形成されず、結果としてユーザーに誤解や混乱を招くリスクがあることを、よくよく承知の上で使うべし。アクセシビリティおじさんとしては、少なくとも現時点においては、推奨できませんけども。

以下余談。件のTogetterまとめの中でも指摘されている通り、W3CのHTML5については微妙なところがあって、正直メンテナンスし続ける意味とか価値ってあるのかな? と思わなくもないです。主要なブラウザーでのHTMLの実装は、WHATWGのHTML仕様を参照して進められている認識なので。ただ、個人的にHTML5を支持したい部分もあって(main要素の登場回数とか)、まったく存在意義が無いとまでは思いません。基本的に、HTMLの仕様策定はWHATWGに委ねてしまい、W3Cはアクセシビリティ観点からのベストプラクティスや、アクセシビリティ・サポーテッド情報の提供に専念......という棲み分けが良いのではないかと勝手に思っています。

現在地:ホーム > 覚え書き > 月別アーカイブ > 2016年12月 > Re: h1要素は複数回使って良いのか!? HTML5.1に関するW3CとWHATWGの主張の違い
Google カスタム検索を利用しています