这个问题困扰了我半天,通过查询把这个问题解决了:
如果是单行文字想垂直居中,只要保证div高和行高保持一致,就可以了。用下面的代码即可实现:
CSS代码:
#div-a{
height:60px;
line-height:60px;
}
XHTML代码:
<div id="div-a">
飘易博客欢迎大家访问@
</div>
如果还想让div里的文字水平居中,加上“text-align:center;”即可;代码如下:
CSS代码:
#div-a{
text-align:center;
height:60px;
line-height:60px;
}
XHTML代码:
<div id="div-a">
飘易博客欢迎大家访问@
</div>
说明:如果在父级元素定义TEXT-ALIGN:center;这个的意思就是在父级元素内的内容居中;对于IE这样设定就已经可以了。但在mozilla中不能居中。解决办法就是在子元素定义时候设定时再加上“MARGIN-RIGHT:auto;MARGIN-LEFT:auto;”。
但是,如果是多行文字,上面的垂直居中的方法就不行了,得用变通的方法实现;这里建议使用table方法,在table外面再套上相应的div,代码如下:
<table>
<tr><td style="vertical-align:middle;height:300px;background-color:red">
飘易博客<br />欢迎大家访问@<br />www.piaoyi.org
</td></tr>
</table>
多行文字居中还有另外一种方法:
多行内容居中,且容器高度可变,也很简单,给出一致的 padding-bottom 和 padding-top 就行:
.middle-demo-2{
padding-top: 24px;
padding-bottom: 24px;
}
浙公网安备 33010602011771号