博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(转)移动端实现垂直居中的几种方法
阅读量:2240 次
发布时间:2019-05-09

本文共 1901 字,大约阅读时间需要 6 分钟。

转:

 

垂直居中是布局中十分常见的效果之一,为实现良好的兼容性,PC端实现垂直居中的方法一般是通过绝对,table-cell,负边距等方法。有了css3,针对移动端的垂直居中就更加多样化。

方法1:table-cell

html结构:

垂直居中

css:

.box1{        display: table-cell;        vertical-align: middle;        text-align: center;            }

方法2:display:flex

.box2{    display: flex;    justify-content:center;    align-items:Center;}

方法3:绝对定位和负边距

.box3{    position:relative;}.box3 span{                position: absolute;               width:100px;               height: 50px;                top:50%;                left:50%;                 margin-left:-50px;                 margin-top:-25px;                text-align: center;        }

方法4:绝对定位和0

.box4 span{      width: 50%;        height: 50%;         background: #000;      overflow: auto;        margin: auto;        position: absolute;        top: 0;      left: 0;     bottom: 0;      right: 0;  }

这种方法跟上面的有些类似,但是这里是通过margin:auto和top,left,right,bottom都设置为0实现居中,很神奇吧。不过这里得确定内部元素的高度,可以用百分比,比较适合移动端。

方法5:translate

.box6 span{                position: absolute;                top:50%;                left:50%;                width:100%;                transform:translate(-50%,-50%);                text-align: center;        }

这实际上是方法3的变形,移位是通过translate来实现的。

方法6:display:inline-block

.box7{      text-align:center;       font-size:0;}.box7 span{      vertical-align:middle;       display:inline-block;       font-size:16px;}.box7:after{      content:'';      width:0;      height:100%;      display:inline-block;      vertical-align:middle;}

这种方法确实巧妙...通过:after来占位。

方法7:display:flex和margin:auto

.box8{        display: flex;        text-align: center;}.box8 span{    margin: auto;}

方法8:display:-webkit-box

.box9{        display: -webkit-box;        -webkit-box-pack:center;       -webkit-box-align:center;        -webkit-box-orient: vertical;         text-align: center}

。。。。。。。

转载于:https://www.cnblogs.com/zhaobao1830/p/9714029.html

你可能感兴趣的文章
深入理解JVM虚拟机1:JVM内存的结构与消失的永久代
查看>>
深入理解JVM虚拟机3:垃圾回收器详解
查看>>
深入理解JVM虚拟机4:Java class介绍与解析实践
查看>>
深入理解JVM虚拟机5:虚拟机字节码执行引擎
查看>>
深入理解JVM虚拟机6:深入理解JVM类加载机制
查看>>
深入了解JVM虚拟机8:Java的编译期优化与运行期优化
查看>>
深入理解JVM虚拟机9:JVM监控工具与诊断实践
查看>>
深入理解JVM虚拟机10:JVM常用参数以及调优实践
查看>>
深入理解JVM虚拟机12:JVM性能管理神器VisualVM介绍与实战
查看>>
深入理解JVM虚拟机13:再谈四种引用及GC实践
查看>>
Spring源码剖析1:Spring概述
查看>>
Spring源码剖析2:初探Spring IOC核心流程
查看>>
Spring源码剖析5:JDK和cglib动态代理原理详解
查看>>
Spring源码剖析6:Spring AOP概述
查看>>
【数据结构】队列的基本认识和队列的基本操作
查看>>
【数据结构】循环队列的认识和基本操作
查看>>
【LeetCode】无重复字符的最长子串
查看>>
时间复杂度
查看>>
【C++】动态内存管理 new和delete的理解
查看>>
【Linux】了解根目录下每个文件的作用
查看>>