私は自分のすべての画像をCSSで扱いたいと思います(私が知る唯一の方法はそれらを背景画像として入れることです)。
しかし、この解決策の問題は、divに画像のサイズをとらせることができないことです。
だから私の質問は:CSSで<div><img src="..." /></div>
と同等のものを持つための最良の方法は何ですか?
この答えは Jaap :
<div class="image"></div>
そしてCSSでは:
div.image {
content:url(http://placehold.it/350x150);
}
あなたはこのリンクでそれを試すことができます: http://jsfiddle.net/XAh2d/
これはCSSのコンテンツについてのリンクです http://css-tricks.com/css-content/
これはChrome、Firefox、Safariでテスト済みです。 (私はMacにいるので、誰かがIEで結果を出したら、それを追加するように言ってください)
あなたはこれを行うことができます:
<div class="picture1"> </div>
そしてこれをあなたのcssファイルに入れてください:
div.picture1 {
width:100px; /*width of your image*/
height:100px; /*height of your image*/
background-image:url('yourimage.file');
margin:0; /* If you want no margin */
padding:0; /*if your want to padding */
}
そうでなければ、単に普通のものとしてそれらを使用してください
Javascript/Jqueryの場合
img
で画像をロードするdiv
を動的に作成し、幅、高さ、背景を設定する元のimg
を削除する
$(document).ready(function() {
var image = $("<img>");
var div = $("<div>")
image.load(function() {
div.css({
"width": this.width,
"height": this.height,
"background-image": "url(" + this.src + ")"
});
$("#container").append(div);
});
image.attr("src", "test0.png");
});
サンプルコードとしてこれを取ります。 imageheightとimage widthをあなたの画像の寸法に置き換えてください。
<div style="background:yourimage.jpg no-repeat;height:imageheight px;width:imagewidth px">
</div>