页面架构(笔记2)——垂直居中布局
2016-02-18 21:49
585 查看
需求要求:
1.子容器相对父容器垂直居中
2,子容器与父容器的自身高度都是自适应的
解决方案一(table-cell+vertical-align)
解决方案二(absolute+transform)
解决方案三(flex+align-items)
1.子容器相对父容器垂直居中
2,子容器与父容器的自身高度都是自适应的
解决方案一(table-cell+vertical-align)
<style type="text/css"> body{margin:20px;} .parent{width:4em;height:500px;} .child{width:100%;} .parent{ display: table-cell; vertical-align: middle; } </style>
<body> <div class="parent"> <div class="child">DEMO</div> </div> </body>
要点:
vertical-align属性可以作用在inline元素,inline-block元素以及table-ceil上
方案一优点:兼容性好,兼容Ie8+(包括ie8)
缺点:.Ie6.7不兼容table-ceil,可以通过改成table结构的方法来兼容
解决方案二(absolute+transform)
<style type="text/css"> body{margin:20px;} .parent{width:4em;height:500px;} .child{width:100%;} .parent{ position: relative; } .child{ position: absolute; top: 50%; transform: translateY(-50%); } </style>
<body> <div class="parent"> <div class="child">DEMO</div> </div> </body>
方案二优点:absolute脱离文档流,不会对其他元素产生影响,
缺点:transform:不支持Ie6,7,8,兼容性达不到要求,可以在不同的浏览器前加上私有前缀
解决方案三(flex+align-items)
<style type="text/css"> body{margin:20px;} .parent{width:4em;height:500px;} .child{width:100%;} .parent{ display: flex; align-items: center; } </style>
<body> <div class="parent"> <div class="child">DEMO</div> </div> </body>
方案一优点:只要给parent设置就可以了
缺点:flex不支持Ie6,7,8,兼容性达不到要求
相关文章推荐
- 页面架构(笔记1)——水平居中布局
- 【译】别学框架,学架构
- linux之i2c子系统架构---总线驱动
- PHP网站首页打不开的原因讲起
- PHP网站首页打不开的原因讲起
- Unity5标准着色器源代码剖析之一:架构分析篇
- replication 复制集架构模式配置
- 大型web系统架构详解
- Java集群优化——dubbo+zookeeper构建高可用分布式集群
- 构建高并发高可用的电商平台架构实践
- 大型网站架构体系的演变(下)
- 大型网站架构体系的演变(上)
- HaProxy+Keepalived+Mycat高可用群集配置
- 理解RESTful架构
- 浅谈12306核心模型设计思路和架构设计
- 快的打车架构实践
- iOS中MVVM的架构设计
- Android架构思考
- 云客网:企业网站SEO优化方案实例
- 网站的一些定位