zoukankan      html  css  js  c++  java
  • 元素垂直居中

    下面介绍的方法主要是利用display:inline-block;让元素变为行内块元素,利用vertical-align:middle来实现垂直居中,利用父元素的text-align:center;实现水平居中。


    一、表格方法
    表格本来对立面的内容是垂直居中的,所以用表格来做很适合。但是它里面的内容是行内元素才行,所以下面的代码就可以实现。

    *{margin:0px; padding:0px;}
    table {position:absolute; 100%; height:100%; text-align:center; background:rgba(0,0,0,0.5);}
    .test {background:red; display:inline-block;}
    在css里面有个display:table-cell;属性值可以让元素渲染为表格单元格,就可以轻松实行让子元素水平垂直居中了,自己试下

    .wrap {display:table-cell; 300px; height:300px; text-align:center; vertical-align:middle; background:rgba(0,0,0,0.5);}
    .test {background:red; display:inline-block;}


    二、利用vertical-align:middle
    这个方法目前是我的最爱,因为下面介绍的兼容性不是很好
    这个是利用一个没有宽度b标签来实现水平垂直居中

    .wrap {300px; height:300px; text-align:center; background:rgba(0,0,0,0.5);}
    .vamb {display:inline-block; 0px; height:100%; vertical-align:middle;}
    .test {background:red; display:inline-block;}
    三、使用transform实现
    一般使用百分比单位的时候都是相对父元素来计算的,但是在css里面有个比较特殊的属性是相对自身宽高来计算的。那就是transform:translate();
    这样就简单了,只是这个低版本IE不兼容,而且很遗憾 安卓2.3使用这个有bug,暂时不能在移动端使用

    *{margin:0px; padding:0px;}
    .test {position: absolute; left:50%; top:50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%);}

    四、弹性盒模型
    弹性盒模型就是flex,css3新增布局方式,超级好用,谁用谁知道,推荐大家都学习一番。
    这个方法我在手机端都很喜欢用,相对爽啊 呵呵。同样比较遗憾的是低版本IE不支持,不过手机端是没有问题的,使用旧版方法display:box;

    *{margin:0px; padding:0px;}
    .flex {display:-webkit-box; display:-ms-flex; display:-webkit-flex; display:flex;}
    .flex-hc {-webkit-box-pack:center; -ms-justify-content:center; -webkit-justify-content:center; justify-content:center;}
    .flex-vc {-webkit-box-align:center; -ms-align-items:center; -webkit-align-items:center; align-items:center;}
    .wrap {position:fixed; 100%; height:100%; background:rgba(0,0,0,0.5); left:0px; top:0px;}

     
  • 相关阅读:
    codeforces 632F. Magic Matrix
    codeforces 632D. Longest Subsequence 筛法
    移动端项目开发需要注意的问题
    input框、按钮组间的去除空格的解决方案
    radio 和checkbox与文字对齐问题
    怎样设置webstorm localhost为本地ip
    The number of steps(概率dp)
    C++ 面试常见问题
    禅者初心
    Hope
  • 原文地址:https://www.cnblogs.com/fengyingwang/p/7591074.html
Copyright © 2011-2022 走看看