兼容ie、firefox的圖片自動縮放的css跟js代碼分享
更新時間:2013年08月12日 12:34:05 作者:
最近編輯反應(yīng),圖片有時候太大了,如果隱藏了,可能部分內(nèi)容別人就看不到了,如果手工設(shè)置圖片大小又太麻煩了,這里就提供一個方法讓也沒的圖片等比例縮放
這個功能主要是解決內(nèi)容頁中的圖片過大撐出,導(dǎo)致頁面比較難看,就需要這樣的代碼,需要的朋友可以參考下
需求:圖片width<=600px,height<=800。
1、利用max-width,max-height使圖片等比例自動縮放
代碼:
img{max-width: 600px;max-height: 800px;}
由于ie6不支持css max-width,max-height,所以在ie6中需要利用javascript腳本來控制大小。
2、用javascript腳本來兼容ie6,代碼如:
var img_width = img.OffsetWidth;<BR>var img_height = OffsetHeight;
var current_w = (150*img_width)/img_height;
var current_h = (330*img_height)/img_width;
if(img_height>150){
if(img_width>330){
D.css(img,{
width:330 + "px",
height:current_h + "px"
})
}else{
D.css(img,{
width:current_w + "px",
height:150 + "px"
})
}
}else{
if(img_width>330){
D.css(img,{
width:330 + "px",
height:current_h + "px"
})
}else{
D.css(img,{
width:img_width + "px",
height:img_height + "px"
})
}
}
【注1:D.css為KISSY.DOM.css,引用的是kissy類庫中的DOM方法】
【注2:用javascript來控制圖片的尺寸頁面必須要等圖片完全加載出來,所以代碼要包含在window.onload事件中,如果圖片加載速度很慢的話,可能會有一個小缺陷】
所有我們可以結(jié)合這兩個一起使用。先用css然后后面再加上js。
需求:圖片width<=600px,height<=800。
1、利用max-width,max-height使圖片等比例自動縮放
代碼:
復(fù)制代碼 代碼如下:
img{max-width: 600px;max-height: 800px;}
由于ie6不支持css max-width,max-height,所以在ie6中需要利用javascript腳本來控制大小。
2、用javascript腳本來兼容ie6,代碼如:
復(fù)制代碼 代碼如下:
var img_width = img.OffsetWidth;<BR>var img_height = OffsetHeight;
var current_w = (150*img_width)/img_height;
var current_h = (330*img_height)/img_width;
if(img_height>150){
if(img_width>330){
D.css(img,{
width:330 + "px",
height:current_h + "px"
})
}else{
D.css(img,{
width:current_w + "px",
height:150 + "px"
})
}
}else{
if(img_width>330){
D.css(img,{
width:330 + "px",
height:current_h + "px"
})
}else{
D.css(img,{
width:img_width + "px",
height:img_height + "px"
})
}
}
【注1:D.css為KISSY.DOM.css,引用的是kissy類庫中的DOM方法】
【注2:用javascript來控制圖片的尺寸頁面必須要等圖片完全加載出來,所以代碼要包含在window.onload事件中,如果圖片加載速度很慢的話,可能會有一個小缺陷】
所有我們可以結(jié)合這兩個一起使用。先用css然后后面再加上js。
相關(guān)文章
JavaScript出現(xiàn)setTimeout倒計(jì)時誤差的原因分析
setTimeout?倒計(jì)時誤差的出現(xiàn)主要與?JavaScript?的事件循環(huán)機(jī)制和計(jì)時器的執(zhí)行方式有關(guān),本文就來和大家講講具體出現(xiàn)的原因以及解決方法,需要的可以參考一下2023-06-06javascript實(shí)現(xiàn)復(fù)選框全選或反選
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)復(fù)選框全選或反選,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-02-02精解window.setTimeout()&window.setInterval()使用方式與參數(shù)傳遞問題!
精解window.setTimeout()&window.setInterval()使用方式與參數(shù)傳遞問題!...2007-11-11修改js confirm alert 提示框文字的簡單實(shí)例
下面小編就為大家?guī)硪黄薷膉s confirm alert 提示框文字的簡單實(shí)例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-06-06點(diǎn)擊提交按鈕后按鈕變灰色不可用狀態(tài)的三種方法
當(dāng)點(diǎn)擊提交后,提交按鈕變灰色不可用,這樣可有效防止重復(fù)提交,本代碼就是實(shí)現(xiàn)這樣一個功能2013-09-09