38

背景画像のあるテーブルの周りにボーダーを入れたかったのです。境界線は正常に機能しますが、これを行うと(8pxの境界線です)、背景画像が境界線によって切り取られます。背景画像を右に8ピクセル、下に8ピクセル開始するようにシフトできますか?

4

3 に答える 3

66

あなたはbackground-positionを使うことができます:

background-position: 8px 8px;

詳細:https ://developer.mozilla.org/en-US/docs/Web/CSS/background-position

于 2009-07-24T03:00:52.053 に答える
18

速記を使うこともできます。
background: <colour> <image url> <repeat> <left> <top> <scroll>

あなたのために私は次のようなことを考えているでしょう:
background : transparent url(<location to img>) no-repeat 8px 8px scroll;

于 2009-07-24T03:23:28.797 に答える
1

画像を手動でシフトするのではなく、境界ボックス(黄色8px)ではなく、画像をパディングボックス(下の図の緑色)に固定する必要があります。これを行うと、画像の左上隅が境界線の後ろではなく内側に配置されます。

background-origin: padding-box;

これにより、境界線の幅を変更しても機能するため、メンテナンスが容易になります。

ボックスモデル

背景の原点をコンテンツボックス()に設定することもできます。

background-origin: content-box;

ドキュメント/簡単なデモ@MDN

于 2019-03-11T06:10:47.433 に答える