



HTML・CSSでつくるおしゃれな目次のデザイン3選
ブログなどで記事内に設置することの多い「目次」。コンテンツの要約だけでなくページ内リンクとしての役割も持つなど、ユーザビリティをグッと向上させてくれる要素です。今回はそんな目次のHTML・CSSによるデザインをまとめました。開閉機能のON・OFFに対応しており、どれもコピペだけで取り入れることが可能となっています。

シルバー背景&枠線付き
step2
HTMLをコピペする
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>
</ol>
</div>
step3
CSSをコピペする
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 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;
}

フラットデザイン
step2
HTMLをコピペする
HTML
<div class="toc-005">
<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>
</ol>
</div>
step3
CSSをコピペする
CSS
.toc-005 {
margin-bottom: 30px;
border-radius: 3px;
background-color: #f2f2f2;
}
.toc-005 div {
display: flex;
justify-content: center;
align-items: center;
margin: 0;
padding: 10px 0;
background-color: #2589d0;
color: #fff;
font-weight: 600;
font-size: 1.1em;
}
.toc-005 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%23fff%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-005 ol {
list-style-type: decimal;
margin: 0;
overflow: hidden;
}
.toc-005 > ol {
padding: 1em 1em 1em 3em;
}
.toc-005 ol ol {
margin-top: 5px;
padding-left: 1.1em;
}
.toc-005 li {
padding: 5px 0;
font-weight: 600;
}
.toc-005 ol ol li {
font-weight: 500;
font-size: .9em;
}
.toc-005 a {
color: #333;
text-decoration: none;
}

フラットデザイン&枠線付き
step1
デザインを調整する
step2
HTMLをコピペする
HTML
<div class="toc-002">
<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>
</ol>
</div>
step3
CSSをコピペする
CSS
.toc-002 {
margin-bottom: 30px;
border: 2px solid #2589d0;
border-radius: 3px;
}
.toc-002 div {
display: flex;
justify-content: center;
align-items: center;
margin: 0;
padding: 10px 0;
background-color: #2589d0;
color: #fff;
font-weight: 600;
font-size: 1.1em;
}
.toc-002 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%23fff%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-002 ol {
list-style-type: decimal;
margin: 0;
overflow: hidden;
}
.toc-002 > ol {
padding: 1em 1em 1em 3em;
}
.toc-002 ol ol {
margin-top: 5px;
padding-left: 1.1em;
}
.toc-002 li {
padding: 5px 0;
font-weight: 600;
}
.toc-002 ol ol li {
font-weight: 500;
font-size: .9em;
}
.toc-002 a {
color: #333;
text-decoration: none;
}
とてもシンプルな、由緒正しきデザインの目次です。aタグのスタイルに手を加えないことによって、各見出しがクリック可であることが直感的に伝わりやすくなっています。