图片垂直居中 css-借助css实现元素垂直居中的解决方案汇总

2023-08-22 0 4,876 百度已收录

前言

元素垂直居中也是我们日常网页布局中经常遇到的问题。 本文主要向大家介绍通过CSS设置元素垂直居中的解决方案。 遇到过这个问题的同事已经带来了一些帮助,下面就不多说了,我们一起来看看详细的介绍。

html代码

Text here

既然设置了子元素的垂直中心,那么就需要知道父元素的高度,这样才能知道所谓的中间在哪里,对吧? 如果你想站在一段距离的中间,你首先需要知道这个距离有多长,你才能知道中间的位置在哪里。

注意,我所有的高宽比例都是根据html的设置,body{width: 100%; height: 100%;}图片垂直居中 css,如果不设置这个图片垂直居中 css,.parent的div的父元素又是body了,如果不设置body的宽高,可能看不到效果。 .parent div 的高宽比是相对于其父元素而言的,因此使用时需要确认 .parent div 的父元素设置了 .parent div 的长和高。

(1) 行内文本垂直居中

CSS代码

.parent {
    height: 100px;
    border: 1px solid #ccc; /*设置border是为了方便查看效果*/
}
.child {
    line-height: 100px;
}

(2)行内非文本垂直居中(以img为例)

html代码:

CSS代码

.parent {
    height: 100px;
    border: 1px solid #ccc; /*设置border是为了方便查看效果*/
}
.parent img {
    //注意此时应该保证图片自身的高度或者你设置的高度小于父元素的200px的行高,不然你看不出来居中的效果.
    line-height: 100px;
}

(3) 未知高度的块级元素垂直居中

html代码:

sddvsds dfvsdvds

第一种方式(无需添加padding):

CSS代码:

.parent {
  width: 100%;
  height: 100%;
  position: relative;
  /*display: table;*/
}
.child {
  width: 500px;
  border: 1px solid #ccc; /*设置border是为了方便查看效果*/
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

第二种方式(不使用变换):

CSS代码:

.parent {
    position: relative;
    width: 100%;
    height: 100%;
}
.child {
  width: 500px;
  border: 1px solid #ccc;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 30%;
  margin: auto;
}

第三种方式(需要添加padding):

CSS代码:

#parent {
  padding: 5% 0;
}
#child {
  padding: 10% 0;
}

第四种方式:

(使用display:table,该方法也适用于内联文本元素居中):

CSS代码:

.parent {
  width: 100%;
  height: 100%;
  display: table;
}
.child {
  display: table-cell;
  vertical-align: middle;
}

第五种方式(flex布局,这里一定要考虑兼容性!)

CSS代码:

.parent {
    width: 100%;
    height: 100%; /*这里一定要写高度奥!*/
    display: flex;
    align-items: center;
    justify-content: center;
  }

(4) 已知高度的块级元素垂直居中

html代码:

sddvsds dfvsdvds

CSS代码:

#parent {
  height: 300px;
}
#child {
  height: 40px;
  margin-top: 130px; /*这个只为父元素的高度减去这个元素的高度除以二计算得到的*/
  border: 1px solid #ccc;
}

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 css 图片垂直居中 css-借助css实现元素垂直居中的解决方案汇总 https://www.wkzy.net/game/140281.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务