次のdivに背景画像がありますが、画像は途切れます。
<div style='text-align:center;background-image: url(/media/img_1_bg.jpg);background-repeat:no-repeat;width:450px;height:900px;' id="mainpage" align="center">
切り取らずに背景画像を表示する方法はありますか?
これは background-size
プロパティで実現できます。これは現在 ほとんどのブラウザでサポートされています です。
背景画像をdivの内側に合わせて拡大縮小するには
background-size: contain;
背景画像をdiv全体をカバーするように拡大縮小するには:
background-size: cover;
IE 5.5+サポート用のフィルタ 、および 一部の古いブラウザ用のベンダプレフィックス も存在します。
あなたが必要とするものがdivの同じ寸法を持つためにイメージであるならば、私はこれが最もエレガントな解決策であると思います:
background-size: 100% 100%;
そうでなければ、@ grcによる答えが最も適切なものです。
ソース: http://www.w3schools.com/cssref/css3_pr_background-size.asp
あなたもこれを使用します。
background-size:contain;
height: 0;
width: 100%;
padding-top: 66,64%;
私はあなたのdiv値を知りませんが、あなたがそれらを持っていると仮定しよう。
height: auto;
max-width: 600px;
繰り返しますが、これらは単なる乱数です。 divの幅を固定してbackground-imageを作成するのはかなり難しいかもしれませんので、max-widthを使用したほうがよいでしょう。実際、divをbackground-imageで埋めるのは煩雑ではありません。親要素を正しい方法でスタイルしていることを確認してください。そうすれば、その画像には入る場所ができます。
クリス
この属性を使うことができます。
background-size: contain;
background-repeat: no-repeat;
そしてあなたのコードは次のようになります。
<div style="text-align:center;background-image: url(/media/img_1_bg.jpg); background-size: contain;
background-repeat: no-repeat;" id="mainpage">