方法一 (flex)

<div id='box'>
<div class='child'></div>
</div>
#box{
width:200px;
height:200px;
background:blue;
display:flex;
align-items:center;
justify-content:center;
}
.child{
width:100px;
height:100px;
background:red;
}

方法二 (定位 传统布局 =>个人理解:四个方向设置+边距auto 让浏览器妥协渲染)

<div id='box2'>
<div class='child2'></div>
</div>
#box2{
width:200px;
height:200px;
background:blue;
position:relative;
}
.child2{
width:100px;
height:100px;
background:red;
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
margin:auto;
}

方法三 (定位 css3)

<div id='box3'>
<div class='child3'></div>
</div>
#box3{
width:200px;
height:200px;
background:blue;
position:relative;
}
.child3{
width:100px;
height:100px;
background:red;
position:absolute;
top:50%;
left:50%;
transform: translate(-50%,-50%)
}

方法四 (定位 负边距 => 已知子元素宽高)

<div id='box4'>
<div class='child4'></div>
</div>
#box4{
width:200px;
height:200px;
background:blue;
position:relative;
}
.child4{
width:100px;
height:100px;
background:red;
position:absolute;
top:50%;
left:50%;
margin-top: -50px;
margin-left: -50px;
}

方法五 (转换为表格 table-cell)

<div id='box5'>
<div class='child5'></div>
</div>
#box5{
width:200px;
height:200px;
background:blue;
display:table-cell;
text-align:center;
vertical-align: middle;
}
.child5{
width:100px;
height:100px;
background:red;
display:inline-block;
}

CSS常见的5种垂直水平居中(面试够用)的更多相关文章

  1. 关于用css实现文本和图片垂直水平居中

    关于用css实现文本和图片垂直水平居中   一直相信好记性不如烂笔头,最近遇到很多用到垂直居中的,整理一下以便日后查阅. 一.文本垂直水平居中 1.水平居中: 文字水平居中没什么好说的,用text-a ...

  2. CSS 常见的8种选择器 和 文本溢出问题

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>c ...

  3. [Web 前端] 007 css 常见的七种选择器

    1. 标签选择器 影响范围大 建议尽量应用在层级选择器中 举例 <!-- body 体中的 div --> <div>box...</div> /* style 中 ...

  4. CSS之垂直水平居中的背后

    最开始,我想说,这个体系有点大,我写的并不好.就当作是一个思路吧,虽然这个思路有点乱.几乎每一个实现方案的背后都是该属性及其组合的原理,每一个都要剖析其规范细节的话,这篇文章绝不会是这样的篇幅,所以每 ...

  5. 关于css垂直水平居中的几种方式

    css中元素的垂直水平居中是比较常见及较常使用的,在这里向大家介绍一下几种方式. 1.水平居中 margin: 0 auto; 效果图: 而文字的垂直水平居中也比较简单,加上line-height: ...

  6. css实现垂直水平居中的5种方法

    css实现垂直水平居中的5种方法 给父元素设置table-cell,text-align,vertical-align #big{ width: 200px; height: 200px; borde ...

  7. 我已经说了5种css居中实现的方式了,面试官竟然说还不够?

    这是一篇关于居中对齐方式的总结 开篇之前,先问一下大家都知道几种居中的实现方式? 面试时答出来两三个就不错了,就怕面试官还让你继续说.今天就来总结一下这些居中的方式 使用flex布局设置居中. 使用f ...

  8. CSS垂直水平居中方法总结

    在布局的时候经常能用到居中,在此总结一下 html结构: <div class="wrap"> <div class="content"> ...

  9. 使用Sass优雅并高效的实现CSS中的垂直水平居中(附带Flex布局,CSS3+SASS完美版)

    实现css水平垂直居中的方法有很多,在这里我简单的说下四种比较常用的方法: 1.使用CSS3中的Flex布局 对于flex,我们要了解的是它是一个display的属性,而且必须要给他的父元素设置fle ...

随机推荐

  1. Android Studio 百度地图导航

    配置就不再多说了,上一篇已经详细说过了,这次就是根据经纬度坐标做地图导航,路径规划.直接上代码: package com.example.appview.mian_page.Frament.Anzhu ...

  2. ES6扩展——对象的扩展(简洁表示法与属性名表达式)

    1.简洁表达法. 当属性名与属性值相同时,可省略属性值:例如:{name : name}可以写成 {name} 属性方法中,可省略冒号与function,直接 属性名(){}即可.例如{say : f ...

  3. Mysql You can't specify target table 'newsalrecord' for update in FROM clause

    这个问题是不能先select出同一表中的某些值,再update这个表(在同一语句中),即不能依据某字段值做判断再来更新某字段的值.解决办法就是建立个临时的表.

  4. eslint and stylelint config

    eslint: module.exports = {   root: true,   env: {     browser: true,     es6: true,     node: true   ...

  5. 洛谷P3768 简单的数学题解题报告

    $$\begin{eqnarray}&\sum_{i=1}^{n}\sum_{j=1}^{n}ij\gcd(i,j)\\&\sum_{d=1}^{n}\sum_{i=1}^{n}\su ...

  6. Python - 面向对象编程 - __str__()

    为什么要讲 __str__ 在 Python 中,直接 print 一个实例对象,默认是输出这个对象由哪个类创建的对象,以及在内存中的地址(十六进制表示) 假设在开发调试过程中,希望使用 print ...

  7. MacOS开启PPTP协议

    ​ 开启PPTP协议: Mac OS X 系统默认开启了完整性保护(System Intregrity Protection,SIP),所以即使是root帐户也无法修改系统目录中的文件.如果需要修改受 ...

  8. 前端--jstree--异步加载数据

    利用回调来处理服务器返回的数据, 默认只能解析固定格式的返回值 <div class=""> <div id="div-jstree"> ...

  9. rune和byte在处理字符/字符串中的应用.

    rune和byte在处理字符/字符串中的应用. 定义: rune是int32的别名,-2147483648->2147483647,常用来表示UNICODE字符集,可以用来处理包含中文/非中文的 ...

  10. 关联数组VS索引数组

    关联数组和常规说的数组类似,它包含标量抄数据,可用索引值来单独选择这些数据,和常规数组不同的是, 关联数组的索引值不是非负的整数而是任意的标量袭.这些标量称为百Keys,可以在以后用于检索数组中的数值 ...