几种可以让元素水平垂直居中的方法

转载自 http://www.cnblogs.com/dan-dan/p/4771614.html

一、负margin法

  • 这是比较常用的方法,在知道元素的宽高的前提下才能使用

    <div id="a"></div>
    
      #a{
          height:300px;
          width:300px;
          position:absolute;
          top:50%;
          left:50%;
          margin-left:-150px;
          margin-top:-150px;
     }
    
  • 负margin是个非常有意思的用法,深入了解后会发现他在布局上相当有用

  • 优点:代码量少,兼容性好。

  • 缺点:非响应式方法,内容可能会超出容器。

二、transform法

<div id="a"></div>

   #a{ 
      width: 50%;
      height: 20%;
      background: green;
      position: absolute;
      top:50%;
      left: 50%;
      transform:translate(-50%, -50%);
      -webkit-transform:translate(-50%, -50%);
      -ms-transform:translate(-50%, -50%);
   }
  • 优点:代码量少;宽高可变,相应式布局
  • 缺点:不支持IE8,可能需要带供应商前缀

三、Flexbox法

<div class="vertical-container">
    <div class="a"></div>
</div>

  .vertical-container {
        height: 300px;
        width: 300px;
        background: #ccc;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
   }

  .a{
        width: 200px;
        height: 200px;
        background: green;
   }
  • Flexbox的用法远不止如此,在布局上还有很多有趣的用法。

四、“完全水平垂直居中”:

  • 必须要设置元素的高度,图片自身有高度的可以不设。

    <div id="a"></div>
    
      #a{  
          width: 200px;
          height: 200px;
          background: red;
          margin:auto;
          position: absolute;
          top:0;left:0;right: 0;bottom: 0;
    }
    
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,806评论 1 92
  • 1.绝对定位居中技术 我们一直用margin:auto实现水平居中,而一直认为margin:auto不能实现垂直居...
    DecadeHeart阅读 1,621评论 0 3
  • 收听音频,戳链接,旧号itclan已暂停使用,欢迎关注微信itclanCoder公众号可收听更多音频 前言 关于网...
    itclanCoder阅读 8,214评论 3 30
  • 小编今天看了一部脑洞大开的片子 忍不住跟大家一起分享! 其实同性恋早就见怪不怪了,可是直到去年六月 美国法院才裁定...
    大鹏DYY阅读 6,031评论 2 2
  • 我的家乡是风景秀丽的汕头。它不仅物产丰富,更是景色迷人。有许多名胜古迹。有:中山公园……但真正令人流连往返的,是宽...
    章鱼去哪儿阅读 260评论 0 2