码迷,mamicode.com
首页 > Web开发 > 详细

CSS技巧-01 如何实现一个元素在页面中水平垂直居中

时间:2020-03-12 14:08:21      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:form   样式   class   position   middle   text   相对   ott   abs   

(1)知道子元素的宽高

<!--父元素相对定位-->
<!--子元素绝对定位-->
.child{
      position:absolute;
      top:50%;
      left:50%;
      margin-left:-50px;
      margin-top:-50px;
}

 (2)不考虑子元素的宽高

<!--父元素不能有定位-->
<!--子元素绝对定位-->
.child{
      position:absolute;
      top:0;
      left:0;
      right:0;
      bottom:0;
      margin:auto;
    }

 (3)不用考虑子元素的宽高,且当子元素没有宽高也能居中(兼容性不是很好)

<!--父元素不能有定位-->
<!--子元素绝对定位-->
.child{
      background-color: tomato;
      position:absolute;
      top:50%;
      left:50%;
      transform: translate(-50%,-50%);
    }

 (4)给父元素设置display:flex

body{
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
}

 (5)通过JS实现:

获取当前屏幕的宽高,通过DOM添加css样式达到效果

(6)父元素有固定宽高

同时父元素设置:

body{
      height: 988px; width: 1000px;
      display:table-cell;
      vertical-align: middle;
      text-align: center;
    }
子元素需要设置为inline-block
.child{
      display: inline-block;
}

 

CSS技巧-01 如何实现一个元素在页面中水平垂直居中

标签:form   样式   class   position   middle   text   相对   ott   abs   

原文地址:https://www.cnblogs.com/codexlx/p/12468812.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!