CSS之盒子居中的方法
一、盒子垂直居中的方法
1、先让盒子的上下边缘和父盒子的水平中心线重叠,,然后再让子盒子往回移动自身一半的距离
<div class="father"> // 结构
<div class="son"></div>
</div>
/* 通过 transform 属性来移动*/
.father {
width: 500px;
height: 500px;
background-color: skyblue;
border: 1px solid #000;
margin: 0 auto;
}
.son {
width: 200px;
height: 200px;
background-color: pink;
border: 1px solid #000;
margin-top: 50%; // 向下移动父盒子的一半
transform: translateY(-50%); // 向上移动自身盒子的一半
} /* 通过 定位来移动*/
.father {
width: 500px;
height: 500px;
background-color: skyblue;
border: 1px solid #000;
margin: 0 auto;
position: relative;
}
.son {
width: 200px;
height: 200px;
background-color: pink;
border: 1px solid #000;
position: absolute;
top: 50%; // 先向下移动父盒子的一半
margin-top: -100px; // 再向上移动自身盒子的一半 }
2、使用表格的 vertical-align :middle 属性来实现盒子垂直居中
.father {
width: 500px;
height: 500px;
background-color: skyblue;
border: 1px solid #000;
display: table-cell; // 显示形式为表格
vertical-align: middle; // 里面内容为居中对齐
}
.son {
width: 200px;
height: 200px;
background-color: pink;
border: 1px solid #000;
}
3、知道父盒子的高度,可以使用 margin 计算盒子的上下边距,来使盒子居中
.father {
width: 500px;
height: 500px;
background-color: skyblue;
border: 1px solid #000;
margin: 50px auto;
}
.son {
width: 200px;
height: 200px;
background-color: pink;
border: 1px solid #000;
margin-top: 149px; // 根据父盒子的高度指定 margin-top 即可
}
二、盒子水平居中的方法
1、使用 margin: 0 auto;
.father {
width: 500px;
height: 500px;
background-color: skyblue;
border: 1px solid #000;
margin: 50px auto;
}
.son {
width: 200px;
height: 200px;
background-color: pink;
border: 1px solid #000;
margin: 0 auto; // 让盒子左右自动适应,想当于 left:auto; right:auto
}
2、通过计算 margin 左右边距来实现居中
.father {
width: 500px;
height: 500px;
background-color: skyblue;
border: 1px solid #000;
margin: 50px auto;
}
.son {
width: 200px;
height: 200px;
background-color: pink;
border: 1px solid #000;
margin-left: 149px; // 父盒子的定宽的,指定 margin-left 即可
}
3、先让盒子左右边缘和父盒子垂直的中心线垂直,然后把子盒子往回移动自身宽度的一半
/* 通过 transform 实现*/
.father {
width: 500px;
height: 500px;
background-color: skyblue;
border: 1px solid #000;
margin: 50px auto; }
.son {
width: 200px;
height: 200px;
background-color: pink;
border: 1px solid #000;
margin-left: 50%; // 先移动父盒子的一半
transform: translateX(-50%); // 再移动自身盒子一半 }
/*通过 定位实现*/
.father {
width: 500px;
height: 500px;
background-color: skyblue;
border: 1px solid #000;
margin: 50px auto;
position: relative; }
.son {
width: 200px;
height: 200px;
background-color: pink;
border: 1px solid #000;
position: absolute;
left: 50%; // 向右移动父盒子一半
margin-left: -100px; // 向左移动自身盒子一半
/* transform: translateX(-50%); */ //向左移动自身盒子一半
}
4、把盒子转成 行内块,然后用 text-align 属性使盒子水平居中
.father {
width: 500px;
height: 500px;
background-color: skyblue;
border: 1px solid #000;
margin: 50px auto;
text-align: center; // 让父盒子设置水平居中
}
.son {
width: 200px;
height: 200px;
background-color: pink;
border: 1px solid #000;
display: inline-block; // 让子盒子显示为行内块模式
}
CSS之盒子居中的方法的更多相关文章
- CSS设置图片居中的方法
如果是应用了表格,那么设置单元格为align="center"就可以使其中的一切内容居中.如果没有应用表格要想设置图片居中就有点困难了.困难来自不按"常规出牌" ...
- 关于HTML+CSS设置图片居中的方法
有的时候我们会遇到这样一个问题,就是当我们按下F12进行使用firebug调试的时候,我们发现图像没有居中,页面底下有横向的滑动条出现,图片没能够居中,默认状态下只是紧靠在页面最左侧,而我们对图像缩小 ...
- css中的居中的方法
一.垂直居中 (1)inline或者inline-*元素 1. 单行文字 设置上下padding相等 以前一直以为inline元素是没有上下的padding和margin的,其实不然,他们是有上下的p ...
- CSS设置元素居中的方法
1.margin:0 auto; 2.body{text-align:center;} 3.position:absolute; left:50%; margin-left:-(宽/2);
- 《Web开发中让盒子居中的几种方法》
一.记录下几种盒子居中的方法: 1.0.margin固定宽高居中: 2.0.负margin居中: 3.0.绝对定位居中: 4.0.table-cell居中: 5.0.flex居中: 6.0.trans ...
- css盒子居中
方法1(margin: 0 auto)<!DOCTYPE html> <html lang="en"> <head> <meta char ...
- css图片居中,通过纯css实现图片居中的多种实现方法
在网页布局中,图文排版是我们常用的,那么经常会遇到如何让图片居中显示呢,这篇文章将总结常用css实现图片居中的方法总结: html结构: <div class="demo" ...
- css 浮动元素居中
方法一 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...
- cssy元素居中的方法有哪些?
css的元素居中 各位小伙伴们在努力写网页的时候有没有遇到过这样的一个问题呢? 在写的时候发现他不居中,可是要分分钟逼死强迫症的啊! 别急,我来啦 哈哈哈 今天就带来三种css的元素居中的方法 第一种 ...
随机推荐
- CSRF跨域伪造请求
后端生成一个加密token,将其设置在cookie当中,专用于表单数据提交时的验证,并且前端在表单中多增加一个隐藏字段,每当用户提交表单数据时(post请求),将这个隐藏字段一并提交,后端再对表单中的 ...
- GO 解决使用bee工具,报 bash: bee: command not found
我最近使用beego时,遇到以下问题:command not found使用vscode时,运行bee run,报以下错 我查到一篇文章csdn,说用拷贝bee.exe方法,我觉得纯扯淡 如何解决? ...
- LeetCode 1123. Lowest Common Ancestor of Deepest Leaves
原题链接在这里:https://leetcode.com/problems/lowest-common-ancestor-of-deepest-leaves/ 题目: Given a rooted b ...
- ESA2GJK1DH1K基础篇: Android实现MQTT封装源码使用说明
说明 这一节说明一下基础篇APP源码里面MyMqttCilent.java这个文件的使用 新建工程 安装MQTT的jar包 implementation 'org.eclipse.paho:org.e ...
- 记一次生产kafka消息消费的事故
事故背景: 我们公司与合作方公司有个消息同步的需求,合作方是消息生产者,我们是消息消费者,他们通过kafka给我们推送消息,我们实时接收,然后进行后续业务处理.昨天上午,发现他们推送过来的广场门店信息 ...
- Spring Security教程(五)
在之前的几篇security教程中,资源和所对应的权限都是在xml中进行配置的,也就在http标签中配置intercept-url,试想要是配置的对象不多,那还好,但是平常实际开发中都往往是非常多的资 ...
- Failed to contact the endpoint at http://controller:35357/ for discovery. Fallback to using that endpoint as the base url.
问题描述 openstack安装过程中,执行 openstack domain create --description "Domain" example 报错如下: Failed ...
- Linux内核kobject结构体分析
1.前言 Linux内核中有大量的驱动,而这些驱动往往具有类似的结构,根据面向对象的思想,可以将共同的部分提取为父类,而这个父类就是kobject,kobject结构体中包含了大量设备的必须信息,而三 ...
- mount和umount命令使用
1.mount命令 在Linux系统下,mount命令用于加载文件系统到指定的加载点. (1)命令语法 mount(选项)(参数) (2)常用选项说明 -V:显示版本. -l:显示已加载的文件系统列表 ...
- [转帖]Linux操作系统定时任务系统 Cron 入门0
Linux操作系统定时任务系统 Cron 入门 https://www.cnblogs.com/zhuiluoyu/p/5646400.html cron是一个linux下的定时执行工具,可以在无 ...