h1
の重複に関して
まず、この主題に関しての回答です。
端的に言うと、基本的には大丈夫なのですが、
HTML5と、HTML5.1以降で変わります。
HTML5の段
同アウトライン上で一個であれば、
一つのWebページにh1
は複数出現してもよい。
となっています。
ここで注意したいのは、あくまで同アウトライン上で一つですので、
section
などのアウトラインが生成される要素をうまく使う必要が出てきます。
HTML5.1以降
これに関して、上記と少し基準が変わり、
同アウトライン上に一つということは同じですが、
従来の基準と同じになり、
一つのWebページに対して、h1
の出現は、一つであることが望ましい、
となりました。
参考記事
W3C
【HTML5.1勧告】セクション要素内見出しレベル仕様の変更について | とあるコーダーの備忘録
結論、「ダメではないけど、現代では、一つの方がいいよ」となります。
しかし、上記は、
2019年以前までのようです。
最新の仕様は、
下記の文章の通りです。
HTML Standard 日本語訳
ようは、同アウトライン上で一つの出現であれば、
一つのWebページ上に複数h1
は複数出現しても問題ないという、
HTML5の仕様に戻ったということですね。
Lhankor_Mhyさん、K_3578さん、ご指摘大変にありがとうございました。
ただし、仕様書を見る限り、h1
を複数を使う場合は、Webページ全体でその仕様に統一する、
アウトラインに合わせて見出しランクを変えるならその仕様に統一することが、
強く推奨されているように思います。
ようは、仕様が統一されていれば、問題ない、ということでしょう。
ただし、h1
の仕様と意味などを考えた時は、一つの出現が望ましいのは変わりないかと。
本で例えたとき、各ページの主題という役割です。
主題と呼ばれるものは、基本一つですよね?
なので、Webの世界でも同じように、一つが望ましい、となるのでしょう。
アウトラインに関しては、ここでは語るのは長くなってしまうので、割愛します。
ご自身で調査してください。
なので、そこら辺を加味して組み直されるといいかと。
子ページのタイトルはh1で囲うべきか
ここに関しては、過去の質問と、私の回答が参考になるかと思いますので、
ご参照いただければと思います。
HTML - ヘッダーロゴはどのタグで囲えばよいのか?<h1>?<p>?<div>?|teratail