ホームページ作成/画像の表示・活用 (HTML,CSS,JavaScript)

枠線の真下に描画される背景画像のずれを調整する方法(3ページ目)

ボックスの背景画像は、実は「枠線(border)の真下」にも描かれています。ところが「描画開始位置」の仕様のため、半透明や点線の枠線を引くと、背景画像がずれているように見えることがあります。CSS3のプロパティ「background-clip」や「background-origin」を使えば、背景画像の表示範囲や開始位置を調節でき、ずれに対処できます。

西村 文宏

執筆者:西村 文宏

ホームページ作成ガイド

background-clipプロパティで、背景の描画範囲を指定

背景の描画範囲を指定

背景の描画範囲を指定

背景色や背景画像の描画範囲を指定するには、background-clipプロパティを使います。これもCSS3で新しく追加されたプロパティで、以下の3つの値のどれかを指定して使います。

  • border-box (「枠線」の内側/赤色斜線部分)
    (※枠線を含む)
  • padding-box (「内側の余白」の内側/青色斜線部分)
    (※枠線は含まない)
  • content-box (「内容」部分だけ/黄色部分)
    (※枠線も余白も含まない)


 
標準:border-box (=枠線を含む、枠線の内側全部)
標準では、枠線を含む「枠線の内側」に描画される

標準では、枠線を含む「枠線の内側」に描画される

標準では、「border-box」が指定されているものとして解釈されます。そのため、ボックスに指定された背景画像は、右図のように「枠線の真下」にも描かれます。


 
padding-box (=枠線は含まない、枠線より内側全部)
background-clip: padding-box;
枠線部分を除外した「枠線の内側」にだけ描画

枠線部分を除外した「枠線の内側」にだけ描画

値に「padding-box」を指定すると、ボックスに指定された背景画像は、右図のように「枠線の真下」には描かれなくなります。

※右図では、枠線の真下には、「ボックスの背景写真」ではなく、「ページの背景模様」が透けて見えています。


 
content-box (=枠線も余白も含まない、内容部分だけ)
background-clip: content-box;
枠線も余白も除外して、内容部分にだけ描画

枠線も余白も除外して、内容部分にだけ描画

値に「content-box」を指定すると、ボックスに指定された背景画像は、枠線部分にも余白部分にも描かれず、右図のように内容部分にだけ描かれるようになります。

※右図では、内側の余白(padding)部分にも、「ボックスの背景写真」ではなく、「ページの背景模様」が見えています。


 
このように、background-clipプロパティを使えば、背景色や背景画像の描画範囲を変更できます。

枠線の真下に描画される背景画像のずれを調整する方法

今回は、CSS3で追加された2つのプロパティを使うことで、背景画像の表示範囲や表示開始座標を調整し、背景画像がずれているように見えてしまうことに対処する方法をご紹介致しました。背景画像と枠線の配置が意図したとおりにはならなかった際には、これらのプロパティによる調整を試してみて下さい。

【関連記事】

【編集部おすすめの購入サイト】
楽天市場でホームページ作成関連の書籍を見るAmazon でホームページ作成の参考書を見る
  • 前のページへ
  • 1
  • 2
  • 3
※記事内容は執筆時点のものです。最新の内容をご確認ください。
※OSやアプリ、ソフトのバージョンによっては画面表示、操作方法が異なる可能性があります。

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます