为了账号安全,请及时绑定邮箱和手机立即绑定

CSS 垂直居中布局

标签:
Html/CSS

下面都是我在网上借鉴的方法,亲测可用。

<div class="fStyle">  //父元素  <div class="cStyle"></div> //子元素</div>

第一种: 定位
规则如下:
1、父元素为除了static以外的定位方式;
2、子元素为绝对定位,top、bottom、left和right 均设置为0,margin设置为
auto。
代码如下:

.fStyle {    position: relative;    width: 100px;    height: 100px;    border: 1px solid red;
}.cStyle {    position: absolute;    width: 50px;    height: 50px;    top: 0;    bottom: 0;    left: 0;    right: 0;    margin:auto;    border: 1px solid green;
}

第二种: flex布局
规则如下:align-items实现垂直居中,justify-content实现水平居中。
代码如下:

.fStyle {    width: 100px;    height: 100px;    border: 1px solid red;    display: flex;    align-items: center;    justify-content: center;
}.cStyle {    width: 50px;    height: 50px;    border: 1px solid green;
}

第三种: table-cell布局
规则如下:
1、父布局使用vertical-align: middle实现垂直居中,
2、子布局使用margin: 0 auto实现水平居中。
代码如下:

.fStyle{    width: 100px;    height: 100px;    border: 1px solid red;    display: table-cell;    vertical-align: middle;
}.cStyle{    width: 50px;    height: 50px;    border: 1px solid green;    margin: 0 auto;
}

第四种: translate+relative定位
规则如下:
1、子组件采用relative 定位;
2、top和left偏移各为50%;
3、translate(-50%,-50%) 偏移自身的宽和高的-50%。
代码如下:

.fStyle {    width: 100px;    height: 100px;    border: 1px solid red;
}.cStyle {    width: 50px;    height: 50px;    border: 1px solid green;    position: relative;    top: 50%;    left: 50%;    transform: translate(-50%, -50%);
}



作者:甜甜_饭
链接:https://www.jianshu.com/p/f0771691fa1f


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消