これはしばらくの間私を悩ませてきました、そして私はこれを適切に行う方法についてコンセンサスがあるかどうか疑問に思っています。HTMLリストを使用している場合、意味的にリストのヘッダーを含めるにはどうすればよいですか?
1つのオプションはこれです。
<h3>Fruits I Like:</h3>
<ul>
<li>Apples</li>
<li>Bananas</li>
<li>Oranges</li>
</ul>
しかし、意味的には、<h3>
見出しは明示的に関連付けられていません<ul>
別のオプションはこれです:
<ul>
<li><h3>Fruits I Like:</h3></li>
<li>Apples</li>
<li>Bananas</li>
<li>Oranges</li>
</ul>
しかし、見出しは実際にはリストアイテムの1つではないため、これは少し汚いようです。
このオプションはW3Cでは許可されていません。
<ul>
<h3>Fruits I Like:</h3>
<li>Apples</li>
<li>Bananas</li>
<li>Oranges</li>
</ul>
よう<ul>
さんは一つ以上含むことができます<li>
s 'を
古い「リスト見出し」<lh>
が最も理にかなっています
<ul>
<lh>Fruits I Like:</lh>
<li>Apples</li>
<li>Bananas</li>
<li>Oranges</li>
</ul>
もちろん、それは正式にはHTMLの一部ではありません
<label>
フォームと同じように使用するよう提案されていると聞きました:
<ul>
<label>Fruits I Like:</label>
<li>Apples</li>
<li>Bananas</li>
<li>Oranges</li>
</ul>
しかし、これは少し奇妙で、とにかく検証されません。
リストヘッダーのスタイルを設定しようとすると、意味上の問題が簡単にわかります。この場合、<h3>
タグを最初のタグ内に配置して、次の<li>
ようなスタイルを設定する必要があります。
ul li:first-of-type {
list-style: none;
margin-left: -1em;
/*some other header styles*/
}
ホラー!しかし、少なくともこの方法で<ul>
、ul
タグをスタイリングすることで、見出し全体を制御できます。
これを行う正しい方法は何ですか?何か案は?