質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Q&A

解決済

1回答

10344閲覧

最新仕様におけるHTML5のアウトライン判定とh1要素の扱いについて

aKusano

総合スコア3763

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

1グッド

2クリップ

投稿2015/07/23 06:11

HTML5のアウトライン判定のしくみについて現在の最新仕様に基づいた見解を質問させてください。

###疑問点
セクション要素を入れ子にしてアウトラインを作っている場合の、第二階層セクション以下の見出しに全てh1要素を使うことはHTML5仕様としてNGになったのか?


HTML5が文書のアウトラインを判別する際には、

1.セクション要素が使用されていた場合はその入れ子構造で判別
2.セクション要素が使用されていなかったら従来通り見出しレベルで判別

という仕組みだったかと思います。
上記の仕組みがあることから、「セクション内で使用される見出しのレベルは問わない」というルールに変更となり、以下の様なマークアップでも正しくアウトラインが出力されると説明されていたはずです。

HTML

1<body> 2<h1>第一階層の見出し</h1> 3<section> 4 <h1>第二階層の見出し</h1> 5 <p>第二階層のコンテンツ</p> 6 <section> 7 <h1>第三階層の見出し</h1> 8 <p>第三階層のコンテンツ</p> 9 </section> 10</section> 11</body>

ところが、最近W3CのバリデートサービスでHTML5文書をチェックすると、上記のようなマークアップでは見出しレベルについてWariningが出るようになることを確認しました。

Warning: Consider using the h1 element as a top-level heading only (all h1 elements are treated as top-level headings by many screen readers and other tools).

Warningで紹介されている参考サイトを見ると、上記のようなマークアップ構造では、ブラウザやスクリーンリーダーの多くではアウトラインがフラットになってしまうので、第二階層以下の見出しにはh2-h6を使え、というような内容が書かれています。

当方は英語にあまり強くないことと、最新仕様の動向を常にチェックできているわけではないことから、これが単にブラウザ側の対応が遅れていることに対する当面の過渡的な対応として推奨されているだけのことなのか、それとも**「セクション内での見出しレベルは問わない」というルール自体が見直しの方向**となっているのか正しく判断できません。

どなたかHTML5仕様策定の経緯やHTML5.1仕様策定の最新動向に詳しい方がいらっしゃいましたら、教えていただけますと助かります。

よろしくお願い申し上げます。

ikuwow👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

いちおうHTML 5.1でもセクション基準のアウトライン構造は使用上維持されていますが、各バグレポートを追ってみると「ほとんどのUAがうまく実装していないことを前提に、仕様の方を見直すべき」という意見と「仕様通り、正しく実装すべき」という意見が両方あって、お互い手付かずになっているようです。

特にWeb関係では、仕様書の作成が後追いになって現実を反映しない、なんてこともよくあります。

結論:**現状、実用できる環境にはない。**そして、将来的にブラウザに正しく実装されるか、あるいは仕様書から削られるかも、現段階ではわからない

投稿2015/07/23 06:36

maisumakun

総合スコア145930

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aKusano

2015/07/23 07:06

早速のご回答ありがとうございます。 >いちおうHTML 5.1でもセクション基準のアウトライン構造は使用上維持されていますが、各バグレポートを追ってみると「ほとんどのUAがうまく実装していないことを前提に、仕様の方を見直すべき」という意見と「仕様通り、正しく実装すべき」という意見が両方あって、お互い手付かずになっているようです。 「ほとんどのUA」というものの中には最新のChromeとかFirefoxなども含まれるのでしょうか?もしセクション構造によるアウトライン判別の実装状況を確認できる資料などをご存知でしたら教えていただけますと幸いです。 しかし、「アウトラインを作る」という役割がUA側で実装できていないとなると セクション要素を使う意味が半減しそうな感じでテンション下がりますね・・・。 今のところはソースの見通しを良くする意味合いと、セマンティクス強化の目的でしか 意味が無いとか・・・(トホホ)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問