多行文字垂直居中的方法

方法一:父元素使用display:table和子元素使用display:table-cell属性来模拟表格,子元素设置vertical-align:middle和text-align:center即可垂直居中。

.div1{
    height:300px;
    width: 300px;
    background-color: cadetblue;
    display: table;
}
.span1{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}
<div class="div1">
    <span class="span1">
        方法一:父元素使用display:table和子元素使用display:table-cell属性来模拟表格,子元素设置vertical-align:middle即可垂直居中
    </span>
</div>

方法二:对子元素设置display:inline-block属性,使其转化成行内块元素,模拟成单行文本。父元素设置对应的height和line-height。对子元素设置vertical-align:middle属性,使其基线对齐。添加line-height属性,覆盖继承自父元素的行高。缺点:文本的高度不能超过外部盒子的高度。

.div1{
    height:300px;
    width: 300px;
    background-color: cadetblue;
    line-height: 300px;
}
.span1{
    display: inline-block;
    line-height: 20px;
    text-align: center;
    vertical-align: middle;
}
<div class="div1">
    <span class="span1">
    方法二:对子元素设置display:inline-block属性,使其转化成行内块元素,模拟成单行文本。父元素设置对应的height和line-height。对子元素设置vertical-align:middle属性,使其基线对齐。添加line-height属性,覆盖继承自父元素的行高。缺点:文本的高度不能超过外部盒子的高度。
    </span>
</div>

方法三:脱离文档流的居中方式,使用定位,为父盒子设置宽高,使用相对定位,子盒子使用绝对定位,先向右向下偏移50%,再通过transform偏移自身宽度和长度的一半达到居中

          .div1{
              height:300px;
              width: 300px;
              background-color: cadetblue;
              position: relative;
          }
          .div2
          {
              width: 240px;
              position: absolute;
              top:50%;
              left:50%;
              transform: translate(-50%,-50%);
          }
<div class="div1">
    <div class="div2">
        方法三:脱离文档流的居中方式,使用定位,为父盒子设置宽高,使用相对定位,子盒子使用绝对定位,先向右向下偏移50%,再通过transform偏移自身宽度和长度的一半达到居中
    </div>
</div>
前端问题总结 文章被收录于专栏

总结一些前端常见的面试笔试题,来和大家分享鸭

全部评论

相关推荐

07-09 15:55
门头沟学院 Java
点赞 评论 收藏
分享
07-05 16:23
门头沟学院 Java
mengnankk:我投了300,约了5 6个面试。感觉项目写的太多了。一个项目就写五六个亮点,不是把整个项目的功能描述下。其他的没啥,简历看起来有点长
点赞 评论 收藏
分享
风中翠竹:真的真的真的没有kpi。。。面试官是没有任何kpi的,捞是真的想试试看这个行不行,碰碰运气,或者是面试官比较闲现在,没事捞个人看看。kpi算HR那边,但是只有你入职了,kpi才作数,面试是没有的。
双非有机会进大厂吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务