css图片垂直居中 css中如何实现图片垂直居中

html-css08

css图片垂直居中 css中如何实现图片垂直居中,第1张

在曾经的 淘宝UED 招聘 中有这样一道题目:使用纯CSS实现+未知尺寸的图片(但高宽都小于200px)在200px的正方形容器中水平和垂直居中。当然出题并不是随意,而是有其现实的原因,垂直居中是淘宝工作中最常遇到的一个问题,很有代表性。题目的难点在于两点:1.垂直居中;2.图片是个置换元素,有些特殊的特性。CSS简单的解决方法:复制代码代码如下:.box {/*非IE的主流浏览器识别的垂直居中的方法*/display: table-cellvertical-align:middle/*设置水平居中*/

要div垂直居中,最好的方法就是让height和ling-height的数值一致.

比如

<div

style="height:30pxline-height:30px">

xxx

</div>

这样,里面的内容xxx就会垂直居中显示!

然后再使其水平居中,使用text-align

例子:

<div

style="height:30pxline-height:30pxtext-align:center">

xxx

</div>

这样,垂直+水平就居中了.line-height是css中能够方便设置字的垂直位置的好方法~!

algin='center'

//水平居中

或者

style='text-algin:center'

关于垂直居中的问题,这里最好使用一个固定的值来计算

尽管有CSS的vertical-align特性,但是并不能有效解决未知高度的垂直居中问题(在一个DIV标签里有未知高度的文本或图片的情况下)。标准浏览器如Mozilla,

Opera,

Safari等.,可将父级元素显示方式设定为TABLE(display:

table)

,内部子元素定为table-cell

(display:

table-cell),通过vertical-align特性使其垂直居中,但非标准浏览器是不支持的。

非标准浏览器只能在子元素里设距顶部50%,里面再套个元素距顶部-50%

来抵消。