如何用CSS使图片自适应显示宽度

如题所述

  公司的项目中需要显示由用户提供URI链接的图片,可是预先无法获知图片的尺寸大小,如果图片尺寸过大将会影响页面布局。最理想的解决方案自然是自动生成缩略图,涉及的后台工作较为复杂,用CSS进行控制是一个可以接受的捷径。  如果用width 属性强行设定显示尺寸似乎太不智能。幸好Firefox/Opera/IE 7 都提供了 max-width 属性支持。假定希望图片显示宽度不超过500像素,CSS可能如下:  以下是引用片段:以下是引用片段:  fit-image{  border:0;  max-width:500px;  }  IE6 不支持 max-width 属性,但是利用 IE 独有的 expression 属性可以迂回的解决这个问题。  以下是引用片段:以下是引用片段:  fit-image{  border:0;  max-width:500px;  width:expression(  function(img){  img.onload=function(){  this.style.width=’’;  this.style.width=(this.width500)?"500px":this.width+"px"  };  return’120px’//加载时显示宽度为120px  }(this)  );  }  利用<img的onload 事件使图片加载完成后计算其尺寸大小,如果超过500像素就显示为500像素,否则显示其默认宽度。  expression 不是符合WEB标准的做法,不到万不得以不建议使用。但是不能不承认IE的很多扩展是不错的,IE不应该被轻视!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-23
图片有父层吗,设置图片的width:100%.
相似回答