小熊泡泡

          常用鏈接

          統(tǒng)計(jì)

          最新評(píng)論

          如何用CSS使圖片自適應(yīng)顯示寬度 (轉(zhuǎn)載)

          ?

          公司的項(xiàng)目中需要顯示由用戶(hù)提供URI鏈接的圖片,可是預(yù)先無(wú)法獲知圖片的尺寸大小,如果圖片尺寸過(guò)大將會(huì)影響頁(yè)面布局。最理想的解決方案自然是自動(dòng)生成縮略圖,涉及的后臺(tái)工作較為復(fù)雜,用CSS進(jìn)行控制是一個(gè)可以接受的捷徑。

          如果用 width 屬性強(qiáng)行設(shè)定顯示尺寸似乎太不智能。幸好 Firefox/Opera/IE 7 都提供了 max-width 屬性支持。假定希望圖片顯示寬度不超過(guò)500像素,CSS可能如下:

          fit-image {
              border    : 0;
              max-width : 500px;
          }

          讓我痛恨的 IE6 不支持 max-width 屬性,但是利用 IE 獨(dú)有的 >>expression 屬性可以迂回的解決這個(gè)問(wèn)題。

          fit-image {
              border    : 0;
              max-width : 500px;
              width:      expression (
                function(img){
                  img.onload=function(){
                    this.style.width = '';
                    this.style.width = (this.width > 500)?"500px":this.width+"px"
                  }; 
                  return '120px'  //加載時(shí)顯示寬度為120px
                }(this)
              );
          }

          利用<img> 的 onload 事件使圖片加載完成后計(jì)算其尺寸大小,如果超過(guò)500像素就顯示為500像素,否則顯示其默認(rèn)寬度。

          expression 不是符合WEB標(biāo)準(zhǔn)的做法,不到萬(wàn)不得以不建議使用。但是不能不承認(rèn)IE的很多擴(kuò)展是不錯(cuò)的,IE不應(yīng)該被輕視! PermaLink

          posted on 2006-07-08 21:39 小熊泡泡 閱讀(395) 評(píng)論(1)  編輯  收藏 所屬分類(lèi): html-css

          評(píng)論

          # re: 如何用CSS使圖片自適應(yīng)顯示寬度 (轉(zhuǎn)載) 2013-05-07 13:47 薩提亞

          很好啊  回復(fù)  更多評(píng)論   

          主站蜘蛛池模板: 杂多县| 新泰市| 台中市| 巴林左旗| 大兴区| 万年县| 万全县| 金昌市| 温州市| 揭东县| 延边| 云和县| 古浪县| 辽宁省| 汶上县| 上栗县| 诸城市| 栾川县| 邵东县| 丰顺县| 汝南县| 嘉祥县| 连云港市| 信丰县| 涞水县| 顺平县| 威信县| 怀宁县| 玉树县| 安溪县| 马边| 栖霞市| 大邑县| 淮南市| 石阡县| 肃北| 辉南县| 遂宁市| 新宾| 原平市| 安徽省|