The background-repeat
property in CSS specifies how a background image is repeated both horizontally and vertically within an element.
background-repeat
の主な値
background
ショートハンドと組み合わせるWebサイトのデザインでは、背景画像(background-image
)の設定が欠かせません。画像をどのように繰り返して表示するかを制御するのが background-repeat
プロパティです。シンプルな装飾から複雑なパターン背景まで、多彩な演出が可能になります。
CSS
.selector {
background-repeat: <value>;
}
background-repeat
は画像を「繰り返し表示する設定」をコントロールするためのプロパティです。
値( <value> )には複数の指定方法があります。以下に代表的なものを挙げていきます。
background-repeat
の主な値CSS
.selector {
background-image: url("pattern.png");
background-repeat: repeat;
}
CSS
.selector {
background-image: url("pattern.png");
background-repeat: no-repeat;
}
CSS
/* 横方向のみ繰り返す */
.selector {
background-image: url("pattern.png");
background-repeat: repeat-x;
}
/* 縦方向のみ繰り返す */
.selector {
background-image: url("pattern.png");
background-repeat: repeat-y;
}
repeat-x
は画像を水平方向(X軸)にのみ繰り返します。repeat-y
は画像を垂直方向(Y軸)にのみ繰り返します。repeat-x
が便利です。CSS
.selector {
background-image: url("pattern.png");
background-repeat: round;
}
CSS
.selector {
background-image: url("pattern.png");
background-repeat: space;
}
background-repeat: no-repeat;
を使います。background-position
を指定するケースが多いです。background-position: center center;
repeat-x
または repeat-y
を使います。repeat-x
を使い、ボーダーのように演出できます。background-repeat: repeat;
が基本ですが、要素幅に合わせてピッタリ割り切れるようにしたい場合は background-repeat: round;
、端をきれいに揃えたい場合は space;
を活用するのも手です。background-size
や背景の配置を指定する background-position
と組み合わせることで、より洗練されたデザインを実現できます。CSS3では、1つの要素に複数の背景画像を設定できます。カンマ区切りで複数の画像とリピート指定をまとめると、レイヤーのように背景を重ねることが可能です。
CSS
.selector {
background-image: url("bg-pattern.png"), url("bg-decoration.png");
background-repeat: round, no-repeat;
background-position: left top, center center;
background-size: auto, contain;
}
bg-pattern.png
)は repeat
で敷き詰め、2つ目の画像(bg-decoration.png
)は no-repeat
で1回だけ表示、といった具合に重ね合わせできます。background
ショートハンドと組み合わせるCSSでは、背景に関するプロパティをまとめて指定できる**ショートハンド(background
)**が存在します。background-repeat
もまとめて指定することが可能です。
CSS
/* 個別に指定 */
.selector {
background-image: url("pattern.png");
background-repeat: repeat-x;
background-position: center;
background-size: cover;
}
/* ショートハンドでまとめて指定 */
.selector {
background: url("pattern.png") center / cover repeat-x;
}
repeat
/ no-repeat
/ repeat-x
/ repeat-y
は古くから存在し、ほぼすべてのモダンブラウザで問題なく動作します。
round
と space
は CSS3 で追加された比較的新しい値ですが、モダンブラウザ(Chrome、Firefox、Safari、Edge 等)ではすでにサポートされています。
もし古いIEなど、サポートが不十分なブラウザに対応したい場合は、必要に応じてフォールバックを検討してください。
background-size
で明示的にサイズを指定するか、要素の大きさをあらかじめ固定しておくと、想定外のスクロールバー発生や画像の切れを防ぎやすくなります。
background-size
で縮小して使うと画質が向上します。background-repeat
を制御することが可能です。background-repeat
プロパティは、背景画像の繰り返し方法を指定する重要なプロパティです。
repeat
/ no-repeat
/ repeat-x
/ repeat-y
は古くから使われるベーシックな値。round
と space
はCSS3で追加され、より柔軟な配置が可能に。単純に繰り返しを設定するだけのプロパティと思われがちですが、ほかの背景系プロパティ(background-position
, background-size
など)や複数背景を組み合わせることで、多彩なデザインバリエーションを構築できます。デザイナーやコーダーにとって、表現の幅を広げる大切な要素です。ぜひ、自身のサイト制作やアプリケーション開発で積極的に活用してみてください。