CSSのborder-collapseプロパティの使い方を徹底解説
border-collapseプロパティは、隣接するセル同士が触れ合う境界線(ボーダー)をブラウザがどのように表示するか、あるいは各セルがそれぞれ独自のボーダースタイルを保持するかを指定するためのCSSプロパティです。
border-collapseの主な値
- collapse:隣接するセルのボーダーを統合し、1本の線として表示します。表全体がすっきりとした見た目になります。
- separate:各セルが独立したボーダーを持ちます(デフォルト値)。セル同士の間に間隔が生まれます。
使用例
以下のコードを実行して、border-collapseプロパティの動作を確認してみましょう。
<html>
<head>
<style>
table.one {
border-collapse: collapse;
}
table.two {
border-collapse: separate;
}
td.a {
border-style: dotted;
border-width: 2px;
border-color: #000000;
padding: 20px;
}
td.b {
border-style: solid;
border-width: 2px;
border-color: #333333;
padding: 20px;
}
</style>
</head>
<body>
<table class="one">
<caption>Border Collapse(ボーダーを統合)</caption>
<tr><td class="a">India</td></tr>
<tr><td class="b">Australia</td></tr>
</table>
<br />
<table class="two">
<caption>Border Separate(ボーダーを分離)</caption>
<tr><td class="a">India</td></tr>
<tr><td class="b">Australia</td></tr>
</table>
</body>
</html>コードの解説
この例では、2つの表を用意し、それぞれ異なるborder-collapseの値を設定しています。
- 1つ目の表(class="one")には
border-collapse: collapse;を適用しています。隣接するセルのボーダーが統合され、点線と実線が重なって1本の線として表示されます。 - 2つ目の表(class="two")には
border-collapse: separate;を適用しています。各セルのボーダーが独立して表示され、セル間に隙間ができます。
セル「a」には点線(dotted)のボーダー、セル「b」には実線(solid)のボーダーを設定しており、2つの表を見比べることで、collapseとseparateの違いが視覚的によくわかります。
まとめ
border-collapseプロパティを使いこなすことで、表の見た目を大きく変えることができます。一般的なWebデザインでは、線が重なって1本に見えるcollapseの方がすっきりとした印象を与えるため、よく使用されます。表のデザインに合わせて適切な値を選択しましょう。
-
CSSのgrid-auto-columnsプロパティの使い方を徹底解説
CSSのgrid-auto-columnsプロパティは、グリッドレイアウトにおいて明示的にサイズが指定されていない列(暗黙的なトラック)に対して、デフォルトの幅を設定するためのプロパティです。通常、grid-template-columnsで明示的に定義された列以外にアイテムが配置された場合、その列のサイズは自動的に決まります。このときgrid-auto-columnsを指定しておけば、暗黙的に生成されるすべての列に統一した幅を適用できます。grid-auto-columnsの基本的な書き方以下のように、グリッドコンテナに対して指定します。.container { display: gri
-
CSSグリッドのgrid-auto-flowプロパティの使い方と実装例
CSSグリッドレイアウトにおいて、grid-auto-flowプロパティは、明示的に位置が指定されていないアイテム(自動配置アイテム)をグリッド内にどのように流し込むかを制御するための重要なプロパティです。 grid-auto-flowプロパティとは 通常、グリッドアイテムは行方向(左から右へ)に自動的に配置されます。しかし、grid-auto-flowプロパティを使うことで、この配置の流れる方向を変更したり、隙間を詰めて効率的に配置したりすることが可能になります。 主な値は以下の通りです。 row(初期値):アイテムを各行に順番に配置し、必要に応じて新しい行を追加します。 column:ア