按比例调整动态加载图像的大小,并垂直和水平居中



我有一些动态加载的图像,宽度和高度在代码中设置。显然,它并没有按比例缩放它们。这是我用来动态加载图像的代码

$(function(){
    $.getJSON("inc/API.php", {command:"top3"}, function(result) {
        for(var i = 0; i<result.length; i++) {
            $("<div id='top3imgContainer'><a href='images/" + result[i].imageFileName + "' rel='shadowbox[top3]' title='" 
                + result[i].imageHeader + "'><img width='220' height='220' src='images/" + result[i].imageFileName + "' id='top3img' /></a></div>").appendTo("#divTop3");
        } Shadowbox.init({
                continuous:true,
                displayCounter:false,
                overlayColor:"#a09e92",
                overlayOpacity:0.8
            });
     });
});

HTML

<div id="divContent">
    <div id="divTop3">
    </div>
</div>

这是CSS

#divContent {
width:860px;
border: 1px solid;
border-color: #dbd9ca;
border-radius: 10px;
-moz-border-radius: 10px;
margin:5px;
margin-top:20px;
margin-bottom:20px;
padding:5px;
clear:both;
margin-bottom:20px;
}
#divTop3 {
width:850;
text-align:center;
position:relative;
}
#top3imgContainer {
width:245px;
height:270px;
background-image:url(../images_ui/frame.png);
background-repeat:no-repeat;
display:inline-block;
margin: 0 15px 0 15px;
}
img#top3img {
border-radius: 10px;
-moz-border-radius: 10px;
margin-left:13px;
margin-right:20px;
margin-top:17px;
}

在应用CSS之后,它看起来是这样的:http://i44.tinypic.com/168x7i9.jpg

不完全成比例,也不真正居中。所以问题是——我如何按比例缩放它们?在那之后,我如何将每个图像集中在其div中?

谢谢!

我做到了:http://jsfiddle.net/ydZJk/

主要变化如下:

#top3imgContainer {
    width:       100px;
    height:      120px;
    line-height: 120px;
}
img {
    vertical-align: middle;
    max-width:  100px; /* check in all browsers! */
    max-height: 120px; /* Old IEs won't like it */
}

最新更新