※ ChatGPTを利用し、要約された質問です(原文:階層番号について(CSS、html))
CSSとHTMLで目次を作成する方法
このQ&Aのポイント
ブログの目次作成の為に、HTMLとCSSを用いて見出しを階層化する方法を説明します。
具体的なHTMLとCSSコードを示し、目次が正しく機能しない問題に対する修正案を求めています。
見出しを適切に表示させるためのマークアップとスタイリングに関するアドバイスを求めています。
ブログの目次を作成しています。
1. 見出し1
2. 見出し2
2.1 見出し2-1
2.2 見出し2-2
3. 見出し3
このようにしたいのですが、上手くいきません。
修正箇所を教えて頂けると助かります。
【html】
<div class="toc-001">
<div>
目次
</div>
<ol>
<li><a href="#">見出し1</a></li>
<li>
<a href="#">見出し2</a>
<ol>
<li><a href="#">見出し2-1</a></li>
<li><a href="#">見出し2-2</a></li>
</ol>
</li>
<li><a href="#">見出し3</a></li>
</ol>
</div>
【css】
.toc-001 {
margin-bottom: 30px;
padding: 1em 1em 1em 2em;
border: 1px solid #999;
background-color: #f7f7f7;
}
.toc-001 div {
display: flex;
align-items: center;
margin: 0;
padding: 5px 0;
}
.toc-001 div::before {
display: inline-block;
width: 1em;
height: 1em;
margin-right: 5px;
background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%23333%22%3E%3Cpath%20d%3D%22M3.8%2017.2h-3c-.5%200-.8.4-.8.8v3c0%20.4.3.8.8.8h3c.4%200%20.8-.3.8-.8v-3c-.1-.4-.4-.8-.8-.8zm0-15h-3c-.5%200-.8.4-.8.8v3c0%20.4.3.8.8.8h3c.4%200%20.8-.3.8-.8V3c-.1-.4-.4-.8-.8-.8zm0%207.6h-3c-.5%200-.8.3-.8.7v3c0%20.4.3.8.8.8h3c.4%200%20.8-.3.8-.8v-3c-.1-.4-.4-.7-.8-.7zM23.2%2018h-15c-.4%200-.8.3-.8.8v1.5c0%20.4.3.8.8.8h15c.4%200%20.8-.3.8-.8v-1.5c0-.5-.3-.8-.8-.8zm0-15h-15c-.4%200-.7.3-.7.8v1.5c0%20.4.3.7.7.7h15c.5%200%20.8-.3.8-.8V3.8c0-.5-.3-.8-.8-.8zm0%207.5h-15c-.4%200-.8.3-.8.8v1.5c0%20.4.3.8.8.8h15c.4%200%20.8-.3.8-.8v-1.5c0-.5-.3-.8-.8-.8z%22%2F%3E%3C%2Fsvg%3E');
content: '';
}
.toc-001 ol {
list-style-type: decimal;
margin: 0;
padding: 0 1.2em;
overflow: hidden;
}
.toc-001 ol ol {
margin-top: 5px;
}
.toc-001 li {
padding: 5px 0;
}
.toc-001 a {
color: #166c9d;
}
どうぞ、よろしくお願い致します。