css实现垂直水平居中的方法(个数不限)?
方法一:使用绝对定位
大家都知道margin:0 auto;能够实现水平居中,但却不知道margin:0 auto;也是可以实现垂直居中的;
给居中元素添加如下样式:
.Absolute-Center {
border:2px solid red;
height: 200px;
margin: auto;
position: absolute;
top:; left:; bottom:; right:;
}
缺点:内容容易溢出,建议使用overflow:auto;
方法二:负margin方法
给居中的div设置样式:
<style>
* {
margin: 0;
padding: 0;
} .Absolute-Center {
width: 400px;
height: 200px;
background-color: pink;
position: absolute;
top: 50%;
left: 50%;
margin-top: -100px;
margin-left: -200px;
}
</style>
<body>
<div class="Absolute-Center">
</div>
</body>
方法三:css3的 transform 来实现
<style>
* {
margin: 0;
padding: 0;
}
.mydiv {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 300px;
height: 200px;
}
</style>
<body>
<div class="mydiv" style="border: 2px solid red;"></div>
</body>
http://blog.csdn.net/freshlover/article/details/11579669
重新整理部分如下:
CSS实现垂直水平居中的方法(至少写2种)
(1) 文本的水平垂直居中
使用:line-height + text-align: center
<div class=”wrap”>
文本的垂直水平居中
</div>
html,body{
margin: 0;
}
.wrap{
line-height: 400px;
text-align: center;
height: 400px;
font-size:36px;
}
(2) 使用margin: auto 方法实现div水平垂直居中
<div class=”wrap”>
<div class=”content”></div>
</div>
.wrap{
Position: relative;
width: 200px;
height: 300px;
border: 1px solid red;
}
.content{
Position: absolute;
width: 50%;
height: 50%;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
border: 1px solid red;
}
(3) 负margin方法
<div class=”wrap”>
<div class=”content”></div>
</div>
.wrap{
Position: relative;
width: 200px;
height: 300px;
border: 1px solid red;
}
.content{
Position: absolute;
width: 180px;
height: 260px;
top: 50%;
left: 50%;
margin-top: -130px;
margin-left: -90px;
border: 1px solid red;
}
(4) 让图片水平垂直居中,使用table-cell方法
<div class=”wrap”>
<img src=”tupian.png”/>
</div>
.wrap{
width: 200px;
height: 300px;
border: 1px solid red;
display:table-cell;
vertical-align: middle;
text-align:center;
}
img{
vertical-align:middle;
border: 1px solid red;
}
(5) 弹性盒子方法
<div class=”wrap”>
<div class=”content”></div>
</div>
.wrap{
width: 300px;
height: 200px;
border: 1px solid red;
display: -webkit-flex;
display: flex;
-webkit-align-items: center;
align-items: center;
-webkit-justify-content: center;
justify-content: center;
}
.content{
padding: 20px;
border: 1px solid red;
}
(6) 使用CSS3的transform:translate(-50%,-50%); 或者
transform:translate3d(-50%,-50%,0);
<div class=”wrap”>
<div class=”content”></div>
</div>
.wrap{
width: 300px;
height: 200px;
border: 1px solid red;
position: relative;
}
.content{
Position: absolute;
width: 160px;
height: 100px;
left: 50%;
right: 50%;
transform: translate(-50%,-50%);或者用3d旋转的也可以
}
css实现垂直水平居中的方法(个数不限)?的更多相关文章
- css实现垂直水平居中的方法
html结构: <div class="box"> <div>垂直居中</div> </div> 方法1:display:flex ...
- css实现垂直水平居中的5种方法
css实现垂直水平居中的5种方法 给父元素设置table-cell,text-align,vertical-align #big{ width: 200px; height: 200px; borde ...
- css图片垂直水平居中及放大(实现水平垂直居中的效果有哪些方法?)
实现水平垂直居中方法有很多种: 一.万能法: 1.已知高度宽度元素的水平垂直居中,利用绝对定位和负边距实现. <style type="text/css"> .wrap ...
- CSS之垂直水平居中的背后
最开始,我想说,这个体系有点大,我写的并不好.就当作是一个思路吧,虽然这个思路有点乱.几乎每一个实现方案的背后都是该属性及其组合的原理,每一个都要剖析其规范细节的话,这篇文章绝不会是这样的篇幅,所以每 ...
- css文本垂直水平居中
一.单行文本居中 .content{ height:100px; line-height:100px; text-align:center; border:1px solid red; } 效果图 二 ...
- Css实现垂直水平居中的六种方法
经常在项目中用到,今天总结了一下: 演示地址:http://codepen.io/anon/pen/xGdpOa 以下两个类为公共类,便于更好的显示效果,非核心代码 .common{ width: 6 ...
- css中设置div垂直水平居中的方法
设置要水平垂直居中的div的position为absolute,left:50%;margin-left为负的这个元素宽度的一半,同理,top:50%;margin-top为负的这个元素的高度的一半. ...
- CSS之垂直水平居中方法
//居中方法1 position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; width: 346px; height ...
- CSS实现垂直水平居中
HTML结构: <div class="wrapper"> <div class="content"></div> < ...
随机推荐
- Vue系列之 => html-webpack-plugin的两个基本作用
安装 npm i html-webpack-plugin -D webpack.config.js const path = require('path'); //启用热更新的第二步,导入webpac ...
- Delphi使用两种不同方法获取系统端口信息--(装载)
Delphi使用两种方法获取windows系统的端口,还可测试发送消息,点击获取端口信息后,可依次得到如下信息:DCB结构大小.波特率大小.XON的临界值.XOFF的临界值.字符位数.奇偶检验位.停止 ...
- Gem install Mysql2的问题
运行 ‘bundle install’ 或者 ‘gem install mysql2′ 遇到如下错误 > gem install mysql2 ERROR: Error installing m ...
- random模块、time模块、sys模块、os模块
一.random模块 1.随机取小数 (数学计算) print(random.random()) #取0-1之间的小数 print(random.uniform(3,6)) #uniform( ...
- linux windows 格式化一块大于2 TiB硬盘
转自:https://help.aliyun.com/document_detail/34377.html?spm=a2c4g.11186623.2.10.17447386JrLBNR#concept ...
- python list用法
a = ['张三','李四','赵六','王五'] #打印列表 print(a) #增 a.apppend('徐七') print(a) a.insert(1,'张六') print(a) #删 a. ...
- js实现简易版validate
需求分析 项目中需要根据选择不同的类型,显示不同的表单,采用的方法是css隐藏显示不需要的表单,但是这个表单字段都是必填的,尝试把不同的表单放在不同的form里,提交时根据不同的类型调用miniui自 ...
- STA 141A, Homework
STA 141A, Homework 2Due April 30th 2019 (by 8 am) Name:Student ID:Section:Names of your study mates: ...
- python面对对象
面对过程VS面对对象 面向过程的程序设计的核心是过程,过程就是解决问题的步骤,面向过程的设计就是考虑周全什么时候处理什么东西 优点:极大的降低了写程序的复杂度,只需要顺着要执行的步骤,堆叠代码即可. ...
- JSP页面静态包含和动态包含的区别与联系
---恢复内容开始--- JSP页面静态包含和动态包含的区别与联系: 1.<%@ include file=" " %> 是指令元素,<jsp:include p ...