圖片水平垂直置中是老梗,大部分人都做過,或者被面試時問過。但是下面這種0.873方法我是剛知道~~ mark一下。font-size:105 = 120*0.873
提供方法人: shenshenyan
span{display:table-cell;text-align:center; vertical-align:middle;*display:block;*font-family:aiarl;width:120px;height:120px;*font-size:105px;}
span img{vertical-align:middle;}
好了,我直接上代碼大家可以使用,但可能不知道怎麼來的,下面我們看執行個體
效果示範:
原始碼:
代碼如下 |
複製代碼 |
.box { /*非IE的主流瀏覽器識別的垂直置中的方法*/ display: table-cell; vertical-align:middle; /*設定水平置中*/ text-align:center; /* 針對IE的Hack */ *display: block; *font-size: 175px;/*約為高度的0.873,200*0.873 約為175*/ *font-family:Arial;/*防止非utf-8引起的hack失效問題,如gbk編碼*/ width:200px; height:200px; border: 1px solid #eee; } .box img { /*設定圖片垂直置中*/ vertical-align:middle; /*非IE6下的等比縮放*/ max-height:150px; max-width:150px; /*IE6下的等比縮放,注意expression其實是運行了一個JS程式,所以如果圖片很多的話會引起CPU佔用率高*/ width:expression(this.width >150 && this.height < = this.width ? 150: true); height:expression(this.height > 150 && this.width < = this.height ? 150 : true); } |
註:以上方法在IE8下不推薦。可以使用在IE6,IE7,FF等。