第一种:son盒子中定位的上下左右全部为0,然后margin:auto

 1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <title>Document</title>
8 <style>
9 *{
10 margin: 0;
11 padding: 0;
12 }
13 .box{
14 position: relative;
15 width: 500px;
16 height: 500px;
17 background-color: antiquewhite;
18 }
19 .son{
20 position: absolute;
21 top: 0;
22 right: 0;
23 bottom: 0;
24 left: 0;
25 margin: auto;
26 width: 200px;
27 height: 200px;
28 background-color: skyblue;
29 }
30 </style>
31 </head>
32 <body>
33 <div class="box">
34 <div class="son"></div>
35 </div>
36 </body>
37 </html>

第二种:top50%,left50%,然后使用transform: translate(-50%,-50%);   ***我最常用的

 1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <title>Document</title>
8 <style>
9 *{
10 margin: 0;
11 padding: 0;
12 }
13 .box{
14 position: relative;
15 width: 500px;
16 height: 500px;
17 background-color: antiquewhite;
18 }
19 .son{
20 position: absolute;
21 top: 50%;
22 left: 50%;
23 transform: translate(-50%,-50%);
24 width: 200px;
25 height: 200px;
26 background-color: skyblue;
27 }
28 </style>
29 </head>
30 <body>
31 <div class="box">
32 <div class="son"></div>
33 </div>
34 </body>
35 </html>

第三种

 1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <title>Document</title>
8 <style>
9 *{
10 margin: 0;
11 padding: 0;
12 }
13 .box{
14 position: relative;
15 width: 500px;
16 height: 500px;
17 background-color: antiquewhite;
18 }
19 .son{
20 position: absolute;
21 top: 50%;
22 left: 50%;
23 margin: -100px -100px;
24 width: 200px;
25 height: 200px;
26 background-color: skyblue;
27 }
28 </style>
29 </head>
30 <body>
31 <div class="box">
32 <div class="son"></div>
33 </div>
34 </body>
35 </html>

css盒子水平垂直居中的几种方式的更多相关文章

  1. CSS实现水平垂直居中的1010种方式

    转载自:CSS实现水平垂直居中的1010种方式 划重点,这是一道面试必考题,很多面试官都喜欢问这个问题,我就被问过好几次了 要实现上图的效果看似很简单,实则暗藏玄机,本文总结了一下CSS实现水平垂直居 ...

  2. css实现水平垂直居中的几种方式

    梳理下平时常用css水平垂直居中方式- 使用flex布局 HTML <div class="box"> <div class="child"& ...

  3. 手写面试编程题- 数组去重 深拷贝 获取文本节点 设置奇数偶数背景色 JS中检测变量为string类型的方法 第6题闭包 将两个数组合并为一个数组 怎样添加、移除、移动、复制、创建和查找节点? 继承 对一个数组实现随机排序 让元素水平 垂直居中的三种方式 通过jQuery的extend方法实现深拷贝

    第1题==>实现数组去重 通过 new Set(数组名) // var arr = [12, 12, 3, 4, 5, 4, 5, 6, 6]; // var newarr1 = new Set ...

  4. CSS实现水平垂直居中的数种方法整合

    CSS实现水平垂直居中可以说是前端老生常谈的问题了,一般面试官问的时候面试者都会回答出来,但是继续追问还有没有其他方法的时候有可能就说不出来了. 本着学习知识的目的,特在此纪录CSS实现水平垂直居中的 ...

  5. [CSS] 子元素垂直居中的两种方式

    1. 多个子元素水平并排,IE10以下失效 display: flex; align-items: center; justify-content: center; 2.多个子元素竖直排列,这种方式会 ...

  6. 你知道CSS实现水平垂直居中的第10种方式吗?

    你知道CSS实现水平垂直居中的第10种方式吗? 仅居中元素定宽高适用: absolute + 负 margin absolute + margin auto absolute + calc 居中元素不 ...

  7. CSS制作水平垂直居中对齐 多种方式各有千秋

    作为前端攻城师,在制作Web页面时都有碰到CSS制作水平垂直居中,我想大家都有研究过或者写过,特别的其中的垂直居中,更是让人烦恼.这段时间,我收 集了几种不同的方式制作垂直居中方法,但每种方法各有千秋 ...

  8. CSS实现水平垂直居中的方式有哪些?

    CSS实现水平垂直居中的方式有哪些? 基本结构样式: .box { width: 400px; height: 400px; background-color: red; } .inner { wid ...

  9. CSS(九):设置盒子水平垂直居中

    通过设置下面的样式可以使盒子水平垂直居中: <!DOCTYPE html> <html lang="en"> <head> <meta c ...

  10. CSS元素水平垂直居中方法总结(主要对大漠以及张鑫旭博客所述方法进行了归纳)

    本文主要是对主流居中方法进行了归纳,有些地方甚至就是把别人的代码直接复制过来的,没有什么自己的东西,除了大漠以及张鑫旭的方法外,还有来自司徒正美.怿飞博客的几个方法 以下方法,由于测试环境的原因,IE ...

随机推荐

  1. python基础简记

    pyhon 2 兼容 python 3 : 导入__future__包: 一些命名规定:以单划线开头的表示不能直接访问类属性,需要访问接口:以双划线开头的表示类的私有成员:以双划线开头和结尾的表示py ...

  2. "蔚来杯"2022牛客暑期多校训练营1 C.Grab the Seat!

    C.Grab the Seat! 题目链接 https://ac.nowcoder.com/acm/contest/33186/C 题目大意 1.二维平面中,(0,1) - (0,m)为屏幕 2.有n ...

  3. FtpClient上传文件异常:java.net.SocketException: Connection reset

    FtpClient上传文件异常:java.net.SocketException: Connection reset 这问题折磨我快一天了,下午这会儿终于解决了,问题不在程序错误,原因还是出在上传图片 ...

  4. rust 条件编译 Debug Release

    #[cfg(debug_assertions)] macro_rules! debug { () => (std::println!()); ($($arg:tt)*) => ({ pri ...

  5. 发布订阅清理distribution未执行导致distribution库特别大处理办法

    近期发现数据服务器中数据库所在盘被占用的特别严重,一个800G的盘只剩下不到100G,排除备份所占用的其他的空间竟然有400G被安装目录下的分发数据库distribution.MDF所占用. 分发数据 ...

  6. XML的定义以及XML的编写

     什么是XML? 定义 1. XML 是 EXtensible Markup Language 这个单词的简写,中文意思就是:可扩展标记语言. a)可扩展:html 标签是预先定义好的,不能任意定义, ...

  7. 9.Java的LinkedList/Deque相关方法

    Java的LinkedList/Deque中add/offer/push,remove/pop/poll的区别 它们来自不同的接口 add/remove源自集合,所以添加到队尾,从队头删除: offe ...

  8. rabbit.bat server启动闪退,rabbitmq (ArgumentError) argument error,rabbitmq页面无法开启解决方案

    步骤1:下载rabbitmq-plugins rabbitmq-plugins enable rabbitmq_managemen 步骤2:rabbitmq-service移除服务 rabbitmq- ...

  9. Xamarin.Android 利用作业计划程序实现ImageSwitcher图片自动定时轮播

    在开发android程序时,遇到一个问题,ImageSwitcher只支持手动的切换图片,不支持自动定时的切换.因为xamarin的资料很少,官方也没有相应的教程,所以想到这个方法,利用job程序来实 ...

  10. vue核心原理(Diff算法、虚拟dom)

    核心原理&源码 Diff 算法 这里参考大佬文章:https://mp.weixin.qq.com/s/oAlVmZ4Hbt2VhOwFEkNEhw diff 算法的进化 关于 diff 算法 ...