<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        如何對未知高度的圖片設置垂直居中

        來源:懂視網 責編:小采 時間:2020-11-27 18:48:09
        文檔

        如何對未知高度的圖片設置垂直居中

        如何對未知高度的圖片設置垂直居中:這篇文章主要介紹了對未知高度的圖片設置垂直居中的方法詳解,實踐時特別留意一下IE瀏覽器中的顯示情況,需要的朋友可以參考下標準瀏覽器還是將外部容器#box的顯示模式設置為display:table-cell,IE6/IE7是利用在img標簽的前面插入一對空標簽的辦法但是實際在瀏
        推薦度:
        導讀如何對未知高度的圖片設置垂直居中:這篇文章主要介紹了對未知高度的圖片設置垂直居中的方法詳解,實踐時特別留意一下IE瀏覽器中的顯示情況,需要的朋友可以參考下標準瀏覽器還是將外部容器#box的顯示模式設置為display:table-cell,IE6/IE7是利用在img標簽的前面插入一對空標簽的辦法但是實際在瀏
        這篇文章主要介紹了對未知高度的圖片設置垂直居中的方法詳解,實踐時特別留意一下IE瀏覽器中的顯示情況,需要的朋友可以參考下

        標準瀏覽器還是將外部容器#box的顯示模式設置為display:table-cell,IE6/IE7是利用在img標簽的前面插入一對空標簽的辦法
        201585174249665.jpg (500×400)

        但是實際在瀏覽器中實現起來的效果并不是很完美,由于各瀏覽器的解析都各不相同,所以在各瀏覽器都會有1px-3px的偏差。
        方法一:

        該方法是將外部容器的顯示模式設置成display:table,img標簽外部再嵌套一個span標簽,并設置span的顯示模式為display:table-cell,這樣就可以很方便的使用vertical-align象表格元素那樣對齊了,當然這只是在標準瀏覽器下,IE6/IE7還得使用定位。
        HTML代碼

        <p id="box">
        <span><img src="images/demo.jpg" alt="" /></span>
        </p>

        CSS代碼

        <style type="text/css"> 
        #box{ 
         width:500px;height:400px; 
         display:table; 
         text-align:center; 
         border:1px solid #d3d3d3;background:#fff; 
        } 
        #box span{ 
         display:table-cell; 
         vertical-align:middle; 
        } 
        #box img{ 
         border:1px solid #ccc; 
        } 
        </style> 
        <!--[if lte IE 7]> 
        <style type="text/css"> 
        #box{ 
         position:relative; 
         overflow:hidden; 
        } 
        #box span{ 
         position:absolute; 
         left:50%;top:50%; 
        } 
        #box img{ 
         position:relative; 
         left:-50%;top:-50%; 
        } 
        </style> 
        <![endif]-->

        方法二:

        方法二和方法一的實現的原理大同小異,結構也是相同的,方法一用的是條件注釋,方法二就用的CSS Hack。
        CSS代碼

        #box{ 
         width:500px;height:400px; 
         overflow:hidden; 
         position:relative; 
         display:table-cell; 
         text-align:center; 
         vertical-align:middle; 
         border:1px solid #d3d3d3;background:#fff; 
        } 
        #box span{ 
         position:static; 
         *position:absolute; /*針對IE6/7的Hack*/
         top:50%; /*針對IE6/7的Hack*/
        } 
        #box img { 
         position:static; 
         *position:relative; /*針對IE6/7的Hack*/
         top:-50%;left:-50%; /*針對IE6/7的Hack*/
         border:1px solid #ccc; 
        }

        該方法有個弊端,在標準瀏覽器下由于外部容器#box的顯示模式為display:table-cell,所以導致#box無法使用margin屬性,并且在IE8下設置邊框也無效。
        方法三:

        標準瀏覽器還是將外部容器#box的顯示模式設置為display:table-cell,IE6/IE7是利用在img標簽的前面插入一對空標簽的辦法。

        HTML代碼

        <p id="box">
         <i></i><img src="images/demo.jpg" alt="" />
        </p>

        CSS代碼

        <style type="text/css"> 
        #box{ 
        width:500px;height:400px; 
        display:table-cell; 
        text-align:center; 
        vertical-align:middle; 
        border:1px solid #d3d3d3;background:#fff; 
        } 
        #box img{ 
        border:1px solid #ccc; 
        } 
        </style> 
        <!--[if IE]> 
        <style type="text/css"> 
        #box i { 
         display:inline-block; 
         height:100%; 
         vertical-align:middle
         } 
        #box img { 
         vertical-align:middle
         } 
        </style> 
        <![endif]-->

        方法四:

        在img標簽外包裹一個p標簽,標準瀏覽器利用p標簽的偽類屬性:before來實現,IE6/IE7使用了CSS表達式來實現兼容。
        HTML代碼

        <p id="box">
         <p><img src="images/demo.jpg" alt="" /></p>
        </p>

        CSS代碼

        #box{ 
         width:500px;height:400px; 
         text-align:center; 
         border:1px solid #d3d3d3;background:#fff; 
        } 
        #box p{ 
         width:500px;height:400px; 
         line-height:400px; /* 行高等于高度 */
        } 
        /* 兼容標準瀏覽器 */
        #box p:before{ 
         content:"."; /* <a href="http://casinogreece.gr/">????????????</a> 具體的值與垂直居中無關,盡可能的節省字符 */
         margin-left:-5px; font-size:10px; /* 修復居中的小BUG */
         visibility:hidden; /*設置成隱藏元素*/
        } 
        #box p img{ 
         *margin-top:expression((400 - this.height )/2); /* CSS表達式用來兼容IE6/IE7 */
         vertical-align:middle; 
         border:1px solid #ccc; 
        }

        使用:beforr這個方法對于標準瀏覽器來說比較給力,也沒發現有副作用,但是對于IE6/IE7,如果對性能要求較高的話CSS表達式的方法要慎用。
        方法五:

        該方法針對IE6/IE7,將圖片外部容器的字體大小設置成高度的0.873倍就可以實現居中,標準瀏覽器還是使用上面的方法來實現兼容,并且結構也是比較優雅。
        HTML代碼

        <p id="box">
         <img src="images/demo.jpg" alt="" />
        </p>

        CSS代碼

        #box{ 
         width:500px;height:400px; 
         text-align:center; 
         border:1px solid #d3d3d3;background:#fff; 
         /* 兼容標準瀏覽器 */
         display: table-cell; 
         vertical-align:middle; 
         /* 兼容IE6/IE7 */
         *display:block; 
         *font-size:349px; /* 字體大小約為容器高度的0.873倍 400*0.873 = 349 */
         *font-family:Arial; /* 防止非utf-8引起的hack失效問題,如gbk編碼 */
        } 
        #box img{ 
         vertical-align:middle; 
        }

        設置字體大小的方法感覺比較怪異,也沒有看到一個合理的解釋,只知道圖片元素有一些不同于其他元素的特性,但是對于IE6/IE7來說,這個方法還是比較給力的。
        思考:很多方法都是依賴于將外部容器的顯示模式設置成table才能實現垂直居中,也就是p來模擬table,如果CSS有一個屬性來實現這種效果那該多好。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        如何對未知高度的圖片設置垂直居中

        如何對未知高度的圖片設置垂直居中:這篇文章主要介紹了對未知高度的圖片設置垂直居中的方法詳解,實踐時特別留意一下IE瀏覽器中的顯示情況,需要的朋友可以參考下標準瀏覽器還是將外部容器#box的顯示模式設置為display:table-cell,IE6/IE7是利用在img標簽的前面插入一對空標簽的辦法但是實際在瀏
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: ZZIJZZIJ亚洲日本少妇JIZJIZ| 黄色成人网站免费无码av| 日韩精品亚洲专区在线观看| 亚洲中文字幕一区精品自拍| 成人男女网18免费视频| 亚洲第一成年免费网站| 国产成人综合久久精品免费| 国产精品亚洲一区二区三区久久| 免费国产成人午夜电影| 一区二区三区视频免费观看| 国产亚洲精品高清在线| 国产日韩一区二区三免费高清| 亚洲精品午夜无码专区| 亚洲一区免费观看| www.亚洲日本| 看全色黄大色大片免费久久| 免费人成网站永久| 亚洲午夜福利AV一区二区无码| 久久精品乱子伦免费| 亚洲av永久无码嘿嘿嘿| 国产在线观看免费不卡| 久久99精品免费一区二区| 亚洲男人的天堂在线播放| 成人A级毛片免费观看AV网站| 亚洲a∨无码精品色午夜| 亚洲中文字幕久久精品无码喷水| 日韩午夜理论免费TV影院| 亚洲一区二区三区在线| 人人狠狠综合久久亚洲高清| 97在线免费视频| 亚洲校园春色小说| 免费国产一级特黄久久| a毛片在线看片免费| 亚洲国产成人手机在线电影bd | 亚洲第一成人在线| 免费在线观看一级毛片| 免费91麻豆精品国产自产在线观看 | 国产做床爱无遮挡免费视频| 波多野结衣免费一区视频| 色天使亚洲综合在线观看| 77777亚洲午夜久久多人|