首页 > 代码库 > CSS 文字垂直居中
CSS 文字垂直居中
原始 demo
html
<div class ="box"> <div class="text"> 我是单行测试文字 </div> </div> <div class="box"> <div class="text"> 我是多行文字我是多行文字是多行文字我是多行文字我是多行文字我是多行文字我是多行文字我是多行文字我是多行文字我是多行文字我是>多行文字我是多行文字 </div> </div>
css
.box{ border:1px solid #f00; background-color:#eee; width:500px; height:100px;} .text{}
效果图:
一、单行文字的垂直居中
解决方案:line-height方法
css
.box{ border:1px solid #f00; background-color:#eee; width:500px; height:100px;line-height:100px;}
效果图
说明:可以看到,这种方法会使得单行文字居中,而多行文字因为被设置了与容器等大的 line-height,导致文字溢出。所以该方法只适合单行文字的居中。
二、多行文字的垂直居中
解决方案:vertical-align 方法
css
.box{ border:1px solid #f00; background-color:#eee; width:500px; height:100px;vertical-align:middle;display:table-cell;} .text{}
效果图:
说明:可以看到,这种方法能够使得单行文字、多行文字都居中。但是因为 table-cell 是 inline 类型,所以会导致原来的块级元素每个 div 一行移动到了同一行。如果需要分列两行,需要在外面额外添加容器对位置进行控制。
相关阅读:
大小不固定的图片、多行文字的水平垂直居中
line-height、vertical-align与display:inline-block的一些问题
CSS 文字垂直居中
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。