HTML:将 div 的内容水平和垂直居中?

标签 html css

我阅读了很多东西来尝试,但仍然无法正常工作。我有一个包含一些内容的 div,我希望内容垂直和水平居中。当我执行以下操作时,它们垂直居中,但向左对齐。如果我删除 display: table-cell,它们水平居中但对齐到顶部。

<div class='contents'>
  <span>a span</span><br>
  <span>b span</span><br>
  <span>c span</span>
</div>

.contents {
  height: 150px;
  text-align: center;
  display:table-cell;
  vertical-align:middle;
}

最佳答案

我试过你的例子,效果很好。是否在特定浏览器中它不适合您?

.contents {
  height:100px;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  background: red;
}
<div class='contents'>
  <span>a span</span>
  <br>
  <span>b span bit longer</span>
  <br>
  <span>c span</span>
</div>

关于HTML:将 div 的内容水平和垂直居中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30872785/

相关文章:

CSS 列表菜单在 Internet Explorer 7 中无法正常工作

javascript - 调整大小的 CSS 调整大小句柄 : both property

html - 纯CSS交换Label背景

javascript - 为什么使用 window.open() 时我的 CSS 文件仅部分加载

javascript - for 循环内的执行顺序 - jQuery

html - 如何在 bootstrap carousel 上正确调整图像大小

javascript - html anchor 标记的 onclick 不起作用

html - 所有图像都在褪色

css - 如何将 anchor 标记包裹在列表项周围? nedd 列表项元素符号

HTML/CSS : div, anchor 和图像标签,下方有空格