【CSS3リファレンス】border-image
こんにちは(・∀・)
CSS3で新しく追加されたプロパティをご紹介します。今回ご紹介するCSSプロパティはborder-imageです。
概要
border-imageプロパティは指定した要素のボーダーに画像を表示させる事ができるプロパティです。1枚の画像で上下左右に分割して表示します。
Safariは対応しておりません。
border-imageは、
border-image-source、
border-image-slice、
border-image-width、
border-image-repeat
の各プロパティに分割する事ができますが、個別プロパティに対応しているブラウザがありませんので普通にborder-imageを使用した方が間違いないと思います。
.sample {
border-image: url(img.png) 10px round;
}
適用要素
すべての要素(border-collapseの値がcollapseのtableは除く)
指定できる値
- url()
- ボーダーに表示する画像のurlを指定
- 数値、%数値
- 画像を分割する距離を指定
数値の単位はピクセルで単位pxはつける必要はありません。%数値は画像の幅と高さに対する割合になります。 - stretch
- 画像を引き伸ばして表示
- repeat
- 画像を繰り返して表示
- round
- 画像を繰り返して表示しますが、画像の幅と要素の幅が合わない時は拡大縮小して調整
- space
- 画像を繰り返して表示しますが、画像の幅と要素の幅が合わない時は隙間を作って調整
- 指定する値が1つ
- 4つの辺に適用
- 指定する値が2つ
- 1つ目の値が上と下、2つ目が右と左
- 指定する値が3つ
- 1つ目の値が上、2つ目の値が右と左、3つ目の値が下
- 指定する値が4つ
- 上から順に時計回りで適用
初期値
個別のプロパティの初期値
サンプル
使用画像
HTML
<p class="demo1">
サンプルデモ1
</p>
<p class="demo2">
サンプルデモ2
</p>
<p class="demo3">
サンプルデモ3
</p>
CSS
.demo1 {
border: 10px solid;
border-image: url(img.png) 10 round stretch;
}
.demo2 {
border: 10px solid;
border-image: url(img.png) 10;
}
.demo3 {
border: 10px solid;
border-image: url(img.png) 30;
}
Result
サンプルデモ1
サンプルデモ2
サンプルデモ3