当前位置:   article > 正文

多行文字垂直居中实现--四种方法_div多行文字垂直居中

div多行文字垂直居中

1. 将父元素设置为块级表格来显示display:table;子元素设置为表格单元格 来显示,设置vertical-align: middle。

  1. <div style="margin: 20px auto;width: 400px;height: 400px;background-color: aqua;overflow: hidden;">
  2. <div style="display: table;margin: 100px auto;width: 200px;height: 200px;text-align: center;background-color: antiquewhite;">
  3. <span style="display: table-cell;vertical-align: middle;">你好你好你好你好你好你好你好你好你好你好你好</span>
  4. </div>
  5. </div>

2. 先对父元素设置高度和行高(相等)height=line-height,子元素设置 为行内块元素display:inline-block,设置vertical-align: middle,自定义line-height 属性的值18px;

  1. <div style="margin: 20px auto;width: 400px;height: 400px;background-color: aqua;overflow: hidden;">
  2. <div style="display: table;margin: 100px auto;width: 200px;height: 200px;text-align: center;background-color: antiquewhite;">
  3. <span style="display: table-cell;vertical-align: middle;">你好你好你好你好你好你好你好你好你好你好你好</span>
  4. </div>
  5. </div>

3. 先将子元素设置为行内块元素display:inline-block,再对子元素设置相对 定位position:relative,之后利用top:50%transform:translateY(-50%)设置 平移

  1. <div style="margin: 20px auto;width: 400px;height: 400px;background-color: rgb(254, 164, 181);overflow: hidden;">
  2. <div style="margin: 100px auto;width: 200px;height: 200px;text-align: center;background-color: antiquewhite;">
  3. <span style="display: inline-block;position: relative;top: 50%;transform: translateY(-50%);">你好你好你好你好你好你好你好你好你好你好你好</span>
  4. </div>
  5. </div>

4. 利用flex弹性布局,将父元素设置为弹性盒子,并设置父元素align-items: center,即定义flex子项在flex容器侧轴方向上的对齐方式为center。

  1. <div style="margin: 20px auto;width: 400px;height: 400px;background-color: rgb(254, 229, 164);overflow: hidden;">
  2. <div style="display: flex;align-items: center;margin: 100px auto;width: 200px;height: 200px;text-align: center;background-color: antiquewhite;">
  3. <span>你好你好你好你好你好你好你好你好你好你好你好</span>
  4. </div>
  5. </div>

效果:

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/853412
推荐阅读
相关标签
  

闽ICP备14008679号