css使子元素在父元素居中的各种方法


html结构:

<div class="parent">
  <div class="child"></div>
</div>

方法一: display:flex

  .parent {
    width: 500px;
    height: 500px;
    background: red;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .child {
    width: 100px;
    height: 100px;
    background: blue;
  }

方法二:display:table-cel

  .parent{
    width: 500px;
    height: 500px;
    background: red;
    display: table-cell;
    vertical-align: middle;
  }
  .child{
    width: 100px;
    height: 100px;
    background: blue;
    margin: auto;
  }

方法三:绝对定位和0

  .parent{
    width: 500px;
    height: 500px;
    background: red;
    position: relative;
  }
  .child{
    width: 100px;
    height: 100px;
    background: blue;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;    
  }

方法四:负边距

  .parent{
    width: 500px;
    height: 500px;
    background: red;
    position: relative;
  }
  .child{
    width: 100px;
    height: 100px;
    background: blue;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -50px;
    margin-top: -50px;  
  }

以上四种方法都可以完成用css实现子元素在父元素实现水平和垂直居中。

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM