首页 >web前端 >css教程 >如何在 CSS 中垂直居中 Div?

如何在 CSS 中垂直居中 Div?

Patricia Arquette
Patricia Arquette原创
2024-12-11 04:28:09989浏览

How to Vertically Center a Div in CSS?

使用 margin:auto 将 Div 垂直居中

而 margin:O auto;水平居中div,margin:auto auto;不垂直居中。不幸的是,vertical-align:middle;也不适用于像 div 这样的块级元素。

限制:

  • vertical-align:middle;: 不适用适用于块级元素。
  • margin-top:auto 和margin-bottom:auto: 计算值为零。
  • margin-top:-50%;: 基于百分比的边距值基于包含块的宽度。

垂直居中解决方法:

由于文档流和元素高度计算的性质,不可能在父元素内使用边距进行垂直居中。但是,这些解决方法可以解决该问题:

嵌套元素方法:

这需要嵌套三个元素,如下所示:

.container {
  display: table;
  height: 100%;
  position: absolute;
  overflow: hidden;
  width: 100%;
}

.helper {
  display: table-cell;
  vertical-align: middle;
  position: absolute;
  top: 50%;
}

.content {
  position: relative;
  top: -50%;
  margin: 0 auto;
  width: 200px;
  border: 1px solid orange;
}
<div class="container">
  <div class="helper">
    <div class="content">
      <p>stuff</p>
    </div>
  </div>
</div>

以上是如何在 CSS 中垂直居中 Div?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn