方法一:使用绝对定位

大家都知道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实现垂直水平居中的方法(个数不限)?的更多相关文章

  1. css实现垂直水平居中的方法

    html结构: <div class="box"> <div>垂直居中</div> </div> 方法1:display:flex ...

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

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

  3. css图片垂直水平居中及放大(实现水平垂直居中的效果有哪些方法?)

    实现水平垂直居中方法有很多种: 一.万能法: 1.已知高度宽度元素的水平垂直居中,利用绝对定位和负边距实现. <style type="text/css"> .wrap ...

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

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

  5. css文本垂直水平居中

    一.单行文本居中 .content{ height:100px; line-height:100px; text-align:center; border:1px solid red; } 效果图 二 ...

  6. Css实现垂直水平居中的六种方法

    经常在项目中用到,今天总结了一下: 演示地址:http://codepen.io/anon/pen/xGdpOa 以下两个类为公共类,便于更好的显示效果,非核心代码 .common{ width: 6 ...

  7. css中设置div垂直水平居中的方法

    设置要水平垂直居中的div的position为absolute,left:50%;margin-left为负的这个元素宽度的一半,同理,top:50%;margin-top为负的这个元素的高度的一半. ...

  8. CSS之垂直水平居中方法

    //居中方法1 position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; width: 346px; height ...

  9. CSS实现垂直水平居中

    HTML结构: <div class="wrapper"> <div class="content"></div> < ...

随机推荐

  1. Python生成器的原理及使用

    '''1,什么是生成器? 函数内但凡有一个yield关键字, 再调用函数就不会执行函数代码,得到的返回值就是一个生成器对象 生成器本身就是一种迭代器 next(g)过程: 会触发生成器g所对应的函数的 ...

  2. setoolkit 制作钓鱼网页

    由于是在虚拟机下实验,仅做示范 下载地址 git clone https://github.com/trustedsec/social-engineer-toolkit/ 终端输入setoolkit启 ...

  3. YEP_fpssynchoption

    帧率调节插件 ============================================================================Introduction===== ...

  4. flask实战-个人博客-虚拟环境、项目结构

    个人博客 博客是典型的CMS(Content Management system,内容管理系统),通常由两部分组成:一部分是博客前台,用来展示开放给所有用户的博客内容:另一部分是博客后台,这部分内容仅 ...

  5. [转载]C# TimeSpan 计算时间差(时间间隔)

    TimeSpan 结构  表示一个时间间隔. 命名空间:System 程序集:mscorlib(在 mscorlib.dll 中) 说明: 1.DateTime值类型代表了一个从公元0001年1月1日 ...

  6. python函数部分----函数初识

    0.来源http://www.cnblogs.com/jin-xin/articles/8241942.html 1.return 返回0个返回值,返回一个返回值.返回多个返回值 None.如果一个变 ...

  7. 移动端js调试工具:eruda

    通常写前端页面都在Chrome浏览器的开发模式下进行调试,但是写放在移动端的H5页面时,有时候会遇到在Chrome上调试没有问题,但是在手机的浏览器上有问题的情况:或者有些功能只能在特定的容器中才能其 ...

  8. FairyGUI TextField

    记录一个在使用FairyGUI的TextField时遇到的坑. TextField有一个文本模板功能,可以实现类似占位符的功能,如:{ number = 0 },然后我们可以在脚本中修改number的 ...

  9. 用phantomjs进行web界面自动化测试的几个注意点

    貌似我以前说过不少界面自动化测试的坏话,哈哈.最近接触了phantomjs,发现用它进行web界面测试也挺有意思的,下面举几个我使用过程中发现的注意点. 1.需要指定phantomjs位置,否则使用时 ...

  10. 解决 Invalid character found in method name. HTTP method names must be tokens 异常信息

    一个线上环境出现异常,不是spring boot. 解决方法: server.xml中加上maxHttpHeaderSize="8192" springBoot 1.x则是在app ...