Webサイトを作っていると「経歴」の欄をどのように作るかは意外と悩みものです。
今回はシンプルで見栄えがいい、テーブルの真ん中に縦の枠線だけを引いたデザインのHTMLとCSSを解説していきます。
ぜひWebデザインなどに役立ててくださいね。
サンプル
このデザインは2×2のテーブルの真ん中にだけ縦の枠線を引くことで実現しています。
HTMLとCSS
HTML
今回のHTMLは以下のようになります。(コピペ可です。)
<table>
<tr>
<td>1990年9月</td>
<td>東京都港区にて出生</td>
</tr>
<tr>
<td>2008年3月</td>
<td>A高校を卒業</td>
</tr>
<tr>
<td>2013年3月</td>
<td>B大学経済学部を卒業</td>
</tr>
<tr>
<td>2014月4月〜</td>
<td>株式会社Cにてシステムエンジニアとして勤務</td>
</tr>
</table>
CSS
CSSはこちらになります。こちらもコピペ可です。
table {
border-collapse: collapse; /* テーブルの枠線をまとめる */
width: 100%;
}
td {
text-align: right;
border: none; /* 初期状態で枠線を削除 */
padding: 10px; /* セルの内側に余白を追加 */
}
td + td {
text-align: left;
border-left: 1px solid rgb(149, 148, 148); /* 各行の2列目のセルに左枠線を追加 */
}
解説
ポイントはCSSの以下の部分です。
td + td {
text-align: left;
border-left: 1px solid rgb(149, 148, 148); /* 各行の2列目のセルに左枠線を追加 */
}
「隣接セレクタ」を使うことでtd要素の後ろにあるtd要素(つまり2列目)にだけborderを適用しています。
テーブルが4列以上の場合
テーブルが4列以上の場合に「真ん中にだけ縦の枠線を引く」方法はちょっと異なります。
HTML
<div class="main">
<table>
<tr>
<td>Cell 1</td>
<td>Cell 2</td>
<td>Cell 3</td>
<td>Cell 4</td>
</tr>
<tr>
<td>Cell 5</td>
<td>Cell 6</td>
<td>Cell 7</td>
<td>Cell 8</td>
</tr>
</table>
</div>
CSS
table {
border-collapse: collapse;
width: 100%;
}
td {
text-align: center;
border: none;
}
td:nth-child(2) {
border-right: 2px solid black;
}
解説
td:nth-child(2) {
border-right: 2px solid black;
}
のところで枠線を引いています。
ntn-childの括弧内の数字をテーブルの列数/2にすることで実現できます。
まとめ
今回はHTML/CSSでテーブルの真ん中の縦の枠線だけを引く方法を紹介しました。
経歴や自己紹介など、様々なWebデザインに応用できますので、ぜひマスターしてくださいね。