博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
垂直水平居中
阅读量:6818 次
发布时间:2019-06-26

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

源代码:

Content here
.out{
width: 300px; height: 400px; margin: 20px auto 0; background:red; } .in{
width: 100px; height: 100px; background: blue; line-height: 100px; }

 

运行图:

 

1.使用表格法:

运行图: 

 

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

 

 

缺点:子元素的会撑满父元素。

 

2.绝对定位计算:对子元素使用绝对定位,并分别移动上左50%,再分别margin-top:-50%height px,margin-left:-50%width px;

运行图:

 

.in{
position: absolute; top: 50%; left: 50%; margin-left: -50px; margin-top: -50px; }

 

缺点:需要对子元素的宽高固定,并且绝对定位容易影响布局。

 

 

 3.  利用绝对定位和translate

同上,先左上各自移动50%,再使用transform: translate(-50%, -50%);translate是基于自身元素的宽高为基准进行移动的。

运行图同上。

.in{
position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

 

缺点:需要绝对定位。

 

4. 基于Flex.

运行图同上。

.out{
display: flex; } .in{
margin: auto; }

 

优点:代码简单。

缺点:兼容性差。

 

转载于:https://www.cnblogs.com/Darlietoothpaste/p/6539422.html

你可能感兴趣的文章
.NET Core配置文件加载与DI注入配置数据
查看>>
JAVA_StandardServer await create[8005]怎么办
查看>>
servlet与CGI的区别
查看>>
【Spring】3、BeanFactory 和 ApplicationContext的区别
查看>>
Sharpdevelop如何在项目中添加类文件
查看>>
百科知识 手机QQ的视频如何保存
查看>>
使用MySQL Workbench建立数据库,建立新的表,向表中添加数据
查看>>
hive学习-测试数据
查看>>
[历朝通俗演义-蔡东藩-前汉]第011回 降真龙光韬泗水 斩大蛇夜走丰乡
查看>>
Maven多模块项目搭建
查看>>
Windows下SQLMAP的安装图解
查看>>
struts2实现简单文件上传
查看>>
常用的一些代码书写规范
查看>>
人在做,天在看——软考总结
查看>>
Java笔记18:JUnit单元测试
查看>>
Could not find installable ISAM
查看>>
vue教程1-06 v-bind属性、class和style
查看>>
如何研究某个gene的ceRNA 网络
查看>>
lucene .doc里存储的skiplist跳表
查看>>
php对gzip的使用(实例)
查看>>