把一副大圖片按比例縮小到某個尺寸,對於現代瀏覽器,直接使用max-width和max-height兩條CSS屬性即可。閱讀全文...
對於IE 6.0及以下版本,以上兩條CSS屬性均不會被理會。之前處理這種事情,我們往往會藉助Javascript,然後為圖片加上onload事件。例如: 引用內容<img src="..." alt="..." onload="resizeImage(this)" />
<script type="text/javascript">
function resizeImage(obj) {
obj.width = obj.width > 50 && obj.width > obj.height ? 50 : auto;
obj.height = obj.height > 50 ? 50 : auto;
}
</script>
這固然能解決問題,但是對以後頁面的升級會帶來麻煩——隨著瀏覽器對CSS支援的完善,我們遲早會把圖片上的onload事件統統去除。該是Expression的Show Time了,既然IE支援通過Expression在CSS中放置一些指令碼,而這段指令碼又只是提供給IE 6.0及以下版本使用,那麼把它寫到Expression中再合適不過。
最終,把一副大圖片按比例縮小到50px*50px以內,可以參照以下這段CSS: 引用內容.thumbImage {
max-width: 50px;
max-height: 50px;
}
* html .thumbImage {
width: expression(this.width > 50 && this.width > this.height ? 50 : auto);
height: expresion(this.height > 50 ? 50 : auto);
}
至於圖片是如何保持其高寬比例的,這張圖片可以解釋:
<script type="text/javascript"><!--
google_ad_client = "pub-7655768891627260";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
//2007-07-16: 酷哥廣告渠道
google_ad_channel = "5559849160";
google_ui_features = "rc:0";
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>