如何在多行左对齐的同时使单行文本中心对齐?

lic*_*eng 8 html css text-align alignment

我使用下面的css来对齐多行时中间和左边的文本,但如何在一行中对齐文本中间和中心?

.my-text {
    border: 1px solid black;
    width: 400px;
    height: 160px;
    vertical-align: middle;
    display: table-cell;
    overflow: hidden;
    line-height: 20px;
    padding: 20px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="my-text">
    carpe diem
</div>
<div class="my-text">
    carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem
</div>
Run Code Online (Sandbox Code Playgroud)

Moh*_*man 12

  1. 将文本换行为内联元素<span>.
  2. 制作它inline-block并将其文本对齐设置为left.

.my-text {
  border: 1px solid black;
  width: 400px;
  height: 160px;
  vertical-align: middle;
  display: table-cell;
  overflow: hidden;
  line-height: 20px;
  text-align: center;
  padding: 10px;
}

.my-text span {
  display: inline-block;
  vertical-align: top;
  text-align: left;
}
Run Code Online (Sandbox Code Playgroud)
<div class="my-text">
  <span>carpe diem</span>
</div>

<div class="my-text">
  <span>carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem carpe diem</span>
</div>
Run Code Online (Sandbox Code Playgroud)