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

做网站的时候经常遇到,新闻展示等,用户上传的图片太大了 自己又不去调解,导致展示的时候图片太大撑开了,使页面显示的很难。这里利用CSS属性,使图片超过展示的宽度后,给图片设置显示最大的宽度。

假如用width属性强行设定显示尺寸似乎太不智能。幸好Firefox/Opera/IE7都提供了max-width属性支持。

假定希望图片显示宽度不超过500像素,CSS可能如下:

以下为引用的内容:

fit-image{ 

  border  :0; 

  max-width:500px; 

} 

 

让我痛恨的IE6不支持max-width属性,但是利用IE独有的expression属性能够迂回的解决这个问题。

 

.fit_image

{

    border:0;

    max-width:700px;

    width:expression( 

   function(img){ 

    img.onload=function(){ 

     this.style.width=''; 

     this.style.width=(this.width>700)?"700px":this.width+"px" 

    }; 

    return '700px'

   }(this) 

  );

}

 

利用<img>的onload事件使图片加载完成后计算其尺寸大小,假如超过500像素就显示为500像素,否则显示其默认宽度。 

expression不是符合WEB标准的做法,不到万不得以不建议使用。但是不能不承认IE的很多扩展是不错的,IE不应该被轻视!

 

 

 

你可能感兴趣的:(css)