div垂直居中的方法

2016-05-19  本文已影响0人  白皓轩

1、div中单行文字的垂直居中

在div中单行的文字需要垂直居中时,只需要对所在的div添加行高line-height等于div的高度,并添加overflow:hidden防止因为防止内容超出容器或者产生自动换行,从而使垂直居中失效

<style type="text/css">

div {

height:100px;

line-height:100px;

overflow:hidden;

}

</style>

2、多行未知高度文字的垂直居中

如果div的高度是可变的那么我们就可以设置一个padding值,试使div的上下padding值相等即可,这样就可以使文字看起来像是被垂直居中了一样。

<style type="text/css">

div {

padding:30px;

{

</style>

3、多行文本固定高度的居中

CSS中的vertical-align属性只会对拥有valign特性的(X)HTML标签起作用,但是在CSS中还有一个display属性能够模拟,所以我们可以使用这个属性来让<div>模拟<table>就可以使用vertical-align了(vertical-align的值是middle,而水平居中align的值是center)。注意,display:table和 display:table-cell的使用方法,前者必须设置在父元素上,后者必须设置在子元素上,因此我们要为需要定位的文本再增加一个<div>元素。(该方法在Internet Explorer 6及以下的版本中是无效的)

<style type="text/css">

div#wrap {

height:400px;

display:table;

}

div#content {

vertical-align:middle;

display:table-cell;

border:1px solid red;

background-color: yellow;

width:760px;

{

</style>

4、知道div的高度

要让DIV水平和垂直居中,必需知道该DIV得宽度和高度,然后设置位置为绝对位置,距离页面窗口左边框和上边框的距离设置为50%,这个50%就是指页面窗口的宽度和高度的50%,最后将该DIV分别左移和上移,左移和上移的大小就是该DIV宽度和高度的一半。

<style type="text/css">

.div{

width:300px;

height:200px;

position:absolute;

left:50%;

top:50%;

margin:-100px 0 0 -150px

}

</style>


上一篇下一篇

猜你喜欢

热点阅读