CSSborder-style プロパティは、要素の境界線の4辺すべての線のスタイルを設定するための一括指定プロパティです。

構文

/* キーワード値 */
border-top-style: none;
border-top-style: hidden;
border-top-style: dotted;
border-top-style: dashed;
border-top-style: solid;
border-top-style: double;
border-top-style: groove;
border-top-style: ridge;
border-top-style: inset;
border-top-style: outset;

/* 上下 | 左右 */
border-style: dotted solid;

/* 上 | 左右 | 下 */
border-style: hidden double dashed;

/* 上 | 右 | 下 | 左 */
border-style: none solid dotted dashed; 

/* グローバル値 */
border-style: inherit;
border-style: initial;
border-style: unset;

border-style プロパティは1つ、2つ、3つ、4つの値を使って指定することができます。

  • 値が1つ指定された場合、全4辺に同じスタイルが適用される。
  • 値が2つ指定された場合、1つ目のスタイルは上下、2つ目は左右の辺に適用される。
  • 値が3つ指定された場合、1つ目のスタイルは、2つ目は左右、3つ目はの辺に適用される。
  • 値が4つ指定された場合、スタイルはそれぞれの順(時計回り)に適用される。

それぞれの値は以下の一覧にあるキーワードです。

<line-style>
枠線のスタイルを表すキーワード。以下の値を使用できます。
none
 
hidden キーワードと同様に、境界線を表示しません。 background-image を設定している場合を除き、プロパティで別に指定していても border-width の計算値は 0 になります。テーブルのセルで境界線が collasped 形式である場合は、 none 値はもっとも低い優先度になります。ほかに競合する境界線が設定されている場合も、そちらが表示されます。
hidden
 
none キーワードと同様に、境界線を表示しません。 background-image を設定している場合を除き、プロパティで別に指定していても border-width の計算値は 0 になります。テーブルのセルで境界線が collasped 形式である場合は、 hidden 値はもっとも高い優先度になります。ほかに競合する境界線が設定されている場合も、非表示になります。
dotted
 
連続した丸い点を表示します。点の間の空白の量は仕様書で定義されておらず、実装依存です。点の半径は、 border-width の計算値の半分です。
dashed
 
短く角が四角い連続したダッシュや線分を表示します。線分の実寸や長さは仕様書で定義されておらず、実装依存です。
solid
 
1本の直線、実線を表示します。
double
 
2本の直線を表示し、幅の合計は border-width で定義したピクセル数になります。
groove
 
凹んだように見える境界線を表示します。 ridge の逆です。
ridge
 
出っ張ったように見える境界線を表示します。 groove の逆です。
inset
 
ボックスが埋め込まれて見える境界線を表示します。 outset の逆です。border-collapsecollapsed に設定されたテーブルのセルに適用すると、この値は groove のようにふるまいます。
outset
 

ボックスが出っ張って見える境界線を表示します。 inset の逆です。 border-collapsecollapsed に設定したテーブルセルに適用すると、この値は ridge のようにふるまいます。

形式文法

<line-style>{1,4}

where
<line-style> = none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset

プロパティのすべての値を指定したテーブル

プロパティのすべての値のサンプルです。

HTML

<table>
  <tr>
    <td class="b1">none</td>
    <td class="b2">hidden</td>
    <td class="b3">dotted</td>
    <td class="b4">dashed</td>
  </tr>
  <tr>
    <td class="b5">solid</td>
    <td class="b6">double</td>
    <td class="b7">groove</td>
    <td class="b8">ridge</td>
  </tr>
  <tr>
    <td class="b9">inset</td>
    <td class="b10">outset</td>
  </tr>
</table>

CSS

/* テーブルの外見を定義 */
table {
  border-width: 3px;
  background-color: #52E396;
}
tr, td {
  padding: 2px;
}

/* border-style の例示用クラス */
.b1 {border-style:none;}
.b2 {border-style:hidden;}
.b3 {border-style:dotted;}
.b4 {border-style:dashed;}
.b5 {border-style:solid;}
.b6 {border-style:double;}
.b7 {border-style:groove;}
.b8 {border-style:ridge;}
.b9 {border-style:inset;}
.b10 {border-style:outset;}

表示結果

仕様書

仕様書 状態 備考
CSS Backgrounds and Borders Module Level 3
border-style の定義
勧告候補 変更なし。
CSS Level 2 (Revision 1)
border-style の定義
勧告 hidden キーワードを追加。
CSS Level 1
border-style の定義
勧告 初回定義

初期値一括指定の各プロパティとして
適用対象すべての要素。 ::first-letter にも適用されます。
継承なし
メディア視覚
計算値一括指定の各プロパティとして
アニメーションの種類個別
正規順序形式文法で定義される一意のあいまいでない順序

ブラウザーの対応

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung Internet
基本対応Chrome 完全対応 1Edge 完全対応 12Firefox 完全対応 1
補足
完全対応 1
補足
補足 Prior to Firefox 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox 50.
IE 完全対応 4Opera 完全対応 3.5Safari 完全対応 1WebView Android 完全対応 3Chrome Android ? Edge Mobile 完全対応 12Firefox Android 完全対応 4
補足
完全対応 4
補足
補足 Prior to Firefox 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox 50.
Opera Android 完全対応 ありSafari iOS 完全対応 3Samsung Internet Android ?

凡例

完全対応  
完全対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。

関連情報

ドキュメントのタグと貢献者

このページの貢献者: mfuji09, momdo, yyss, ethertank, Yuichiro
最終更新者: mfuji09,