borderは「種類」「線の太さ」「色」を指定することで簡単に罫線を表示できるCSSです。
borderはプロパティの設定で複雑な表示も可能です。
昔はバックグラウンドの画像で作っていたが、最近はborderを多様することが多いので、今回は各プロパティの設定やシミュレーターも使って詳しく説明いたします。
cssだけで罫線を引きたい
borderの各プロパティを確認したい
borderのシミュレーターでCSSを簡単に作りたい
CSSでよく使うので覚えているが、使い方がマンネリ化しているので、深堀りしてみました。
borderは、tableタグに罫線を引いたり、margin領域とpadding領域の間に罫線を引く際に使われるCSSです。
罫線の「線の種類」「線の太さ」「線の色」を一括で指定します。
| 【CSS】border | |
|---|---|
| 【使い方】 | border: 線の種類 線の太さ 線の色 ; |
|
border: solid 3px black;
| |
borderは、以下の3つのプロパティをまとめて記述しています。
複数のプロパティを記述するのは面倒なので、borderのようにまとめる方法をショートハンドと呼び、まとめたborderなどのプロパティをショートハンドプロパティと呼ばれています。
※どちらも同様に罫線を表示できるが、borderなら1つで完結できるのがメリット
この後は、それぞれのプロパティについて説明します。
borderで使える罫線の種類を指定します。
罫線の種類は以下の通りです。
| 【CSS】border | ||
|---|---|---|
| 【使い方】 | border: 線の種類 線の太さ 線の色 ; | |
|
border: solid 10px black;
実線 |
border: double 10px #3366ff;
2重線 |
|
|
border: dotted 10px red;
点線 |
border: dashed 10px #33cc33;
破線 |
|
|
border: groove 10px lightcoral;
谷線 |
border: ridge 10px #33ccff;
山線 |
|
|
border: inset 10px l aqua;
内線 |
border: outset 10px #ff99ff;
外線 |
|
|
border: inherit 10px black;
継承 ※親要素のプロパティを適用 |
border: none 10px l #ffffff;
線なし(デフォルト) |
|
borderで線の太さはpxで指定します。
ただ、以下の方法でも指定することが可能です。
thin、medium、thickで指定した場合は、ブラウザで設定された太さで線の太さを表示します。
| 【CSS】border | ||
|---|---|---|
| 【使い方】 | border: 線の種類 線の太さ 線の色 ; | |
|
border: solid 3px black;
3px |
border: solid thin black;
thin |
|
|
border: solid medium black;
medium |
border: solid thick black;
thick |
|
個人的にthin、medium、thickの指定はオススメしません。
理由はブラウザ毎に表示が異なる可能性が高く、意図したデザインにならない可能性が高いからです。
borderで線の色をカラーコードorカラーネームで指定します。
| 【CSS】border | ||
|---|---|---|
| 【使い方】 | border: 線の種類 線の太さ 線の色 ; | |
|
border: solid 5px #000000;
黒 |
border: solid 5px black;
黒 |
|
|
border: solid 5px #ff0000;
赤 |
border: solid 5px red;
赤 |
|
|
border: solid 5px #008800;
緑 |
border: solid 5px green;
緑 |
|
カラーコードでもカラーネームでも指定できるが、できるだけWebセーフカラーを使うように心がけているので、カラーネームで指定することが多い。
borderで線の上下左右を別々に指定することが可能です。
指定する方法は2つあります。
borderで線の上下左右をそれぞれ指定する場合は、以下のプロパティを使います。
| 【CSS】border | ||
|---|---|---|
| 【使い方】 |
border-top: solid 3px black;
上のみ |
border-right: solid 3px black;
右のみ |
|
border-bottom: solid 3px black;
下のみ |
border-left: solid 3px black;
左のみ |
|
borderで線の種類・色・幅を指定して上下左右の罫線を別々に指定する場合は、以下のプロパティを使います。
| 【CSS】border | ||
|---|---|---|
| 【使い方】 |
border-style: solid none none none;
border-width: 3px 0 0 0; border-color: black transparent transparent transparent; 上のみ |
border-style: none solid none none;
border-width: 0 3px 0 0; border-color: transparent black transparent transparent; 右のみ |
|
border-style: nonenone solid none;
border-width: 0 0 3px 0; border-color: transparent transparent black transparent; 下のみ |
border-style: none none none solid;
border-width: 0 0 0 3px; border-color: transparent transparent transparent black; 左のみ |
|
borderで線の上下左右を別紅指定する場合、自分がわかりやすい方法で対応すれば良いと思います。
私は「線の上下左右をそれぞれ指定する」の方が直感的に考えられるので、こっちのみ使っています。
線の角を丸める場合はborder-radiusを使います。
borderの文言が含まれますが、実は画像やバックグラウンドにも適用できる万能なプロパティで、デザインの幅が広がるので、色々な部分で活用しています。
| 【CSS】border-radius | ||
|---|---|---|
| 【使い方】 |
border: solid 3px black;
border-radius: 10px; 罫線の角丸10px |
border: solid 3px black;
border-radius: 32px; 罫線の角丸32px |
|
background: #40a2ff;
border-radius: 10px; バックグラウンドの角丸10px |
border-radius: 32px;![]() 画像の角丸32px |
|
| 角毎に異なる設定も可能です。
border: solid 3px black;
border-radius: 10px 20px 30px 40px; 左上10px、右上20px、右下30px、左下40pxの角丸 |
||
borderのCSSが簡単に作れるシミュレーターを用意しました。
See the Pen 【CSS】border by 山内孝幸 (@hezfscev-the-looper) on CodePen.
線の太さと角丸のスライダーは0〜32pxで用意しています。おそらくその範囲で収まると思いますが、それ以上の値はコピー後に修正いただければと思います。
このサイトでも活用しているオススメの素材サイトです。
是非こちらのバナーからご利用ください。
wildhawkからも写真素材を提供しています。是非ご活用ください