background-origin背景画像の配置領域
background-positionの基準となる領域を、ボックスモデルの3領域から選びます。
背景画像を置くときの原点となるボックスを決めるプロパティ。border・padding・contentのどこを左上の基準にするか比べます。
background-originとは?border-box・padding-box・content-boxをライブプレビューで切り替えながら、背景画像の配置基準、初期値、background-clipとの違いを初学者向けに解説します。
.element background-origin: padding-box;
値のパターン
background-originbackground-positionの基準となる領域を、ボックスモデルの3領域から選びます。
border | padding | content境界線、内側の余白、内容という入れ子の領域から、画像を置き始める場所を決めます。
background-positiontop leftや数値で指定した位置は、選んだ配置領域を基準に計算されます。
初期値はpadding-boxです。背景画像を繰り返さず左上へ置くと、3つの基準領域の違いを確認しやすくなります。
padding-box境界線の内側を基準初期値border-box境界線の外側を基準borderを含むcontent-box内容領域を基準paddingの内側content-box, padding-box背景画像ごとに基準を指定カンマ区切りpaddingの大きいカードで、背景アイコンを本文の開始位置へ合わせたいときはcontent-boxを使えます。
.card { background-origin: content-box; background-position: top left; background-repeat: no-repeat; }半透明や点線のborderの下にも背景画像を回り込ませたいときは、border-boxを基準にします。
.badge { background-origin: border-box; }カンマ区切りの背景画像には、同じ順番で配置基準を並べ、レイヤーごとに原点を変えられます。
.hero { background-origin: content-box, padding-box; }ポイント
background-originは背景画像の位置を測る基準を決め、background-clipは背景をどこまで描くかを決めます。初期値はpadding-boxで、すべての要素と::first-letter・::first-lineに適用でき、子要素へは継承されません。background-attachment: fixedの背景ではbackground-originが無視されます。複数の背景画像には、カンマ区切りで画像ごとの値を指定できます。
background-origin と一緒に使われるプロパティや、詳しい外部リファレンスをまとめました。