点评:经常遇到要居中的问题,水平居中问题比较好解决,而垂直居中问题因为vertical-align经常失效,下面与大家分享下几个不错的解决方法
学习过程中经常遇到要居中的问题,水平居中问题比较好解决,而垂直居中问题因为vertical-align经常失效,所以不容易实现,今天将自己总结的一些方法归纳于这边。
iqQHTML5中文学习网 - HTML5先行者学习网iqQHTML5中文学习网 - HTML5先行者学习网1.div中单行文字垂直水平居中。条件:外层div高度已经给定。代码如下:
iqQHTML5中文学习网 - HTML5先行者学习网 iqQHTML5中文学习网 - HTML5先行者学习网
<style type="text/css"> iqQHTML5中文学习网 - HTML5先行者学习网
.div3{ iqQHTML5中文学习网 - HTML5先行者学习网
border:1px solid red; iqQHTML5中文学习网 - HTML5先行者学习网
text-align:center; iqQHTML5中文学习网 - HTML5先行者学习网
height:200px; iqQHTML5中文学习网 - HTML5先行者学习网
line-height:200px; iqQHTML5中文学习网 - HTML5先行者学习网
width:300px; iqQHTML5中文学习网 - HTML5先行者学习网
overflow:hidden; iqQHTML5中文学习网 - HTML5先行者学习网
} iqQHTML5中文学习网 - HTML5先行者学习网
</style> iqQHTML5中文学习网 - HTML5先行者学习网
<div class="div3"> iqQHTML5中文学习网 - HTML5先行者学习网
iqQHTML5中文学习网 - HTML5先行者学习网2.div中多行文字垂直水平居中。条件:无。代码如下:
iqQHTML5中文学习网 - HTML5先行者学习网 iqQHTML5中文学习网 - HTML5先行者学习网
<style type="text/css"> iqQHTML5中文学习网 - HTML5先行者学习网
.div4{ iqQHTML5中文学习网 - HTML5先行者学习网
border:1px solid red; iqQHTML5中文学习网 - HTML5先行者学习网
width:400px; iqQHTML5中文学习网 - HTML5先行者学习网
padding-bottom:20px; iqQHTML5中文学习网 - HTML5先行者学习网
padding-top:20px; iqQHTML5中文学习网 - HTML5先行者学习网
text-align:center; iqQHTML5中文学习网 - HTML5先行者学习网
} iqQHTML5中文学习网 - HTML5先行者学习网
</style> iqQHTML5中文学习网 - HTML5先行者学习网
<div class="div4"> iqQHTML5中文学习网 - HTML5先行者学习网
div中多行文字垂直水平居中iqQHTML5中文学习网 - HTML5先行者学习网
iqQHTML5中文学习网 - HTML5先行者学习网
div中多行文字垂直水平居中iqQHTML5中文学习网 - HTML5先行者学习网
iqQHTML5中文学习网 - HTML5先行者学习网
div中多行文字垂直水平居 iqQHTML5中文学习网 - HTML5先行者学习网
</div> iqQHTML5中文学习网 - HTML5先行者学习网
iqQHTML5中文学习网 - HTML5先行者学习网3.div中嵌套div,使得中间div垂直水平居中。条件:无。应用table模拟法。代码如下:
iqQHTML5中文学习网 - HTML5先行者学习网 iqQHTML5中文学习网 - HTML5先行者学习网
<style type="text/css"> iqQHTML5中文学习网 - HTML5先行者学习网
.div1{ iqQHTML5中文学习网 - HTML5先行者学习网
border:1px solid red; iqQHTML5中文学习网 - HTML5先行者学习网
display:table-cell; /* 模拟表格法*/ iqQHTML5中文学习网 - HTML5先行者学习网
vertical-align:middle; iqQHTML5中文学习网 - HTML5先行者学习网
text-align:center; iqQHTML5中文学习网 - HTML5先行者学习网
height:200px; iqQHTML5中文学习网 - HTML5先行者学习网
width:200px; iqQHTML5中文学习网 - HTML5先行者学习网
} iqQHTML5中文学习网 - HTML5先行者学习网
.div2{ iqQHTML5中文学习网 - HTML5先行者学习网
border:1px solid red; iqQHTML5中文学习网 - HTML5先行者学习网
margin:auto; iqQHTML5中文学习网 - HTML5先行者学习网
height:100px; iqQHTML5中文学习网 - HTML5先行者学习网
width:100px; iqQHTML5中文学习网 - HTML5先行者学习网
} iqQHTML5中文学习网 - HTML5先行者学习网
</style> iqQHTML5中文学习网 - HTML5先行者学习网
<div class="div1"> iqQHTML5中文学习网 - HTML5先行者学习网
<div class="div2"></div> iqQHTML5中文学习网 - HTML5先行者学习网
</div> iqQHTML5中文学习网 - HTML5先行者学习网
iqQHTML5中文学习网 - HTML5先行者学习网4.div中嵌套div,使得中间div垂直水平居中。条件:外层div和内层div的高度,宽度都已经限定。通过设定margin来使得div居中。代码如下:
iqQHTML5中文学习网 - HTML5先行者学习网 iqQHTML5中文学习网 - HTML5先行者学习网
<style type="text/css"> iqQHTML5中文学习网 - HTML5先行者学习网
.div5{ iqQHTML5中文学习网 - HTML5先行者学习网
border:1px solid red; iqQHTML5中文学习网 - HTML5先行者学习网
height:200px; iqQHTML5中文学习网 - HTML5先行者学习网
width:200px; iqQHTML5中文学习网 - HTML5先行者学习网
} iqQHTML5中文学习网 - HTML5先行者学习网
.div6{ iqQHTML5中文学习网 - HTML5先行者学习网
border:1px solid red; iqQHTML5中文学习网 - HTML5先行者学习网
height:100px; iqQHTML5中文学习网 - HTML5先行者学习网
width:100px; iqQHTML5中文学习网 - HTML5先行者学习网
margin:50px 50px auto auto; iqQHTML5中文学习网 - HTML5先行者学习网
} iqQHTML5中文学习网 - HTML5先行者学习网
</style> iqQHTML5中文学习网 - HTML5先行者学习网
<div class="div5"> iqQHTML5中文学习网 - HTML5先行者学习网
<div class="div6"></div> iqQHTML5中文学习网 - HTML5先行者学习网
</div> iqQHTML5中文学习网 - HTML5先行者学习网
iqQHTML5中文学习网 - HTML5先行者学习网5.div中嵌套div,使得中间div垂直水平居中。条件:外层div高度,宽度不限定,内部div高度,宽度已知,且内外层div的position都必须为absolute。通过设定top,left,margin来使得div居中。代码如下:
iqQHTML5中文学习网 - HTML5先行者学习网 iqQHTML5中文学习网 - HTML5先行者学习网
<style type="text/css"> iqQHTML5中文学习网 - HTML5先行者学习网
.div7{ iqQHTML5中文学习网 - HTML5先行者学习网
position:absolute; iqQHTML5中文学习网 - HTML5先行者学习网
border:1px solid red; iqQHTML5中文学习网 - HTML5先行者学习网
height:50%; iqQHTML5中文学习网 - HTML5先行者学习网
width:50%; iqQHTML5中文学习网 - HTML5先行者学习网
} iqQHTML5中文学习网 - HTML5先行者学习网
.div8{ iqQHTML5中文学习网 - HTML5先行者学习网
border:1px solid red; iqQHTML5中文学习网 - HTML5先行者学习网
height:100px; iqQHTML5中文学习网 - HTML5先行者学习网
width:100px; iqQHTML5中文学习网 - HTML5先行者学习网
position:absolute; iqQHTML5中文学习网 - HTML5先行者学习网
top:50%; iqQHTML5中文学习网 - HTML5先行者学习网
left:50%; iqQHTML5中文学习网 - HTML5先行者学习网
margin-top:-50px; iqQHTML5中文学习网 - HTML5先行者学习网
margin-left:-50px; iqQHTML5中文学习网 - HTML5先行者学习网
} iqQHTML5中文学习网 - HTML5先行者学习网
</style> iqQHTML5中文学习网 - HTML5先行者学习网
<div class="div7"> iqQHTML5中文学习网 - HTML5先行者学习网
<div class="div8">aa</div> iqQHTML5中文学习网 - HTML5先行者学习网
</div> iqQHTML5中文学习网 - HTML5先行者学习网
iqQHTML5中文学习网 - HTML5先行者学习网以上就是我目前所知道的垂直水平都居中的方法,还有很多地方不足,比如ie6兼容性方面等等,希望大家能把自己知道的分享出来,让我这个新手多多学习。