用CSS使圖片自適應顯示寬度

來源:互聯網
上載者:User

做網站的時候經常遇到,新聞展示等,使用者上傳的圖片太大了 自己又不去調解,導致展示的時候圖片太大撐開了,使頁面顯示的很難。這裡利用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不應該被輕視!

 

 

 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.