网页里的一个<DIV></DIV>的长为L,宽为H,里头要放一个图片长为l,宽为h;
想实现一个图片显示效果,如下说明:
(1)如果图片的长和宽都小于<DIV>的长和宽,那么图片自己原始大小显示在DIV中央;
(2)如果图片的长大于DIV的长,但是宽小于DIV的宽,那么图片显示时候长要等于DIV的长,但是宽要跟长整体比例缩小;
(3)如果图片的宽大于DIV的宽,但是长小于DIV的长,那么图片显示时候宽要等于DIV的宽,但是长要跟宽整体比例缩小;
(4)如果图片的长和宽都大于DIV的长和宽,那么把图片按自己长宽比例缩小到可以适合DIV的长宽大小显示;
想实现一个图片显示效果,如下说明:
(1)如果图片的长和宽都小于<DIV>的长和宽,那么图片自己原始大小显示在DIV中央;
(2)如果图片的长大于DIV的长,但是宽小于DIV的宽,那么图片显示时候长要等于DIV的长,但是宽要跟长整体比例缩小;
(3)如果图片的宽大于DIV的宽,但是长小于DIV的长,那么图片显示时候宽要等于DIV的宽,但是长要跟宽整体比例缩小;
(4)如果图片的长和宽都大于DIV的长和宽,那么把图片按自己长宽比例缩小到可以适合DIV的长宽大小显示;
if(l>L&&h>H)||(l>L))
{
width=L;
height=h*L/l;
}
else if(h>H)
{
height =H
width=l*H/h;
}
如果是直接在前台写位置,图片的宽和高你并不知道,只能通过CSS样式来调
img.onload=function(){
if(this.height>540){
this.width=this.width*540/this.height;
this.height=540;
}
if(this.width>400){
this.height=this.height*400/this.width;
this.width=400;
}
需求就是图片自适应DIV大小吧。?下面是我代码库中的一段,相信你能看明白。要是不会用下面的。你就在Google里搜一下‘图片按比例缩放’还可以看这篇blog http://hi.baidu.com/feige05/blog/item/d4a90b25811cfd6434a80fed.html这是基于jquery的。参数:
1.img 你要调整的图片
2.iw 容器的宽
3.ih 容器的高autosize: function(img, iw, ih){
var mw = $(img).width();
var mh = $(img).height();
if (mw / mh > iw / ih) {
$(img).width(iw);
$(img).height(mh * (iw / mw));
}
else {
$(img).height(ih)
$(img).width(mw * (ih / mh));
}
},