美文网首页
如何垂直居中一个元素

如何垂直居中一个元素

作者: nomooo | 来源:发表于2019-03-17 14:48 被阅读0次
单行内联元素垂直居中

利用line-height与height相同即可

<div id="box">
     <span>单行内联元素垂直居中。</span>。
</div>
<style>
 #box {
    height: 120px;
    line-height: 120px;
    border: 2px dashed #f69c55;
    }
</style>
多行内联元素垂直居中
  • 利用flex布局
    利用flex布局实现垂直居中,其中flex-direction:column定义主轴方向为纵向。
<div class="parent">
    <p>Dance like nobody is watching, code like everybody is.
    Dance like nobody is watching, code like everybody is.
    Dance like nobody is watching, code like everybody is.</p>
</div>
<style>
    .parent {
        height: 140px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        border: 2px dashed #f69c55;
    }
</style>
  • 利用表布局(table)
    利用表布局的vertical-align:middle可以实现子元素的垂直居中
<div class="parent">
    <p class="child">The more technology you learn, the more you realize how little you know.
    The more technology you learn, the more you realize how little you know.
    The more technology you learn, the more you realize how little you know.</p>
</div>
 <style>
    .parent {
        display: table;
        height: 140px;
        border: 2px dashed #f69c55;
    }
    .child {
        display: table-cell;
        vertical-align: middle;
    }
</style>
块级元素垂直居中

使用absolute+负margin(已知高度宽度)
通过绝对定位元素距离顶部50%,并设置margin-top向上偏移元素高度的一半

<div class="parent">
    <div class="child">固定高度的块级元素垂直居中。</div>
</div>
.parent {
   position: relative;
}
.child {
   position: absolute;  
   top: 50%;
   height: 100px;
   margin-top: -50px;
}
  • 使用absolute+transform
    当垂直居中的元素的高度和宽度未知时,可以借助CSS3中的transform属性向Y轴反向偏移50%的方法实现垂直居中
<div class="parent">
    <div class="child">未知高度的块级元素垂直居中。</div>
</div>
.parent {
   position: relative;
}
.child {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
}
  • 使用flex+align-items
    通过设置flex布局中的属性align-items,使子元素垂直居中
<div class="parent">
    <div class="child">未知高度的块级元素垂直居中。</div>
</div>
.parent {
    display:flex;
    align-items:center;
}
  • 使用table-cell+vertical-align
    通过将父元素转化为一个表格单元格显示(类似<td>和<th>),再通过设置vertical-align属性,使表格单元格内容垂直居中
<div class="parent">
  <div class="child">Demo</div>
</div>
<style>
  .parent {
    display: table-cell;
    vertical-align: middle;
  }
</style>

相关文章

  • css居中方式总结(亲测有效)

    水平居中(行内元素水平居中、块级元素水平居中) 垂直居中 水平垂直居中 行内元素水平居中 text-align: ...

  • 居中对齐

    行内元素居中[#hang]垂直居中[#hc]水平居中[#hs] 块级元素居中[#kuai]垂直居中[#kc]水平居...

  • 如何水平居中一个元素

    主要介绍水平居中,垂直居中,水平垂直居中的各种办法: 行内元素水平居中 如果块级元素内部包着也是一个块级元素,我们...

  • 垂直居中

    文字的垂直居中 元素的垂直居中

  • 所有CSS居中方法,了解一下?

    目录 水平居中内联元素水平居中块级元素水平居中多个块级元素的水平居中 垂直居中内联元素垂直居中单行内联元素多行内联...

  • css 水平垂直居中实现方式

    css 水平垂直居中实现方式 水平垂直居中包括行内元素居中,以及块级元素居中 行内元素html结构 块级元素结构 ...

  • 未知高度垂直水平居中

    未知宽高的弹出框,水平垂直居中 parrent 内的元素水平垂直居中 parrent 内的元素垂直居中

  • 实现水平/垂直居中

    css实现水平/垂直方向居中 在开始介绍如何实现水平/垂直方向居中之前,需要先介绍一下行内元素和块级元素 行内元素...

  • 2020-03-05 CSS水平垂直居中学

    1.块级元素水平居中,水平元素垂直居中 CodePen:CSS块级水平居中 2.块级元素垂直居中 CodePen:...

  • CSS布局小技巧

    1.让元素水平垂直居中 文字水平垂直居中 2.让元素垂直居中 2.1 flex方式 2.2 position方式 ...

网友评论

      本文标题:如何垂直居中一个元素

      本文链接:https://www.haomeiwen.com/subject/fmlumqtx.html