css控制元素垂直居中的几种方法

一、单行文本垂直居中

HTML:

<div id="parent">
<div id="child">Content here</div>
</div>

CSS:

#child {
line-height: 200px;
}

二、垂直居中一张图片

HTML

<div id="parent">
<img src="image.png" alt="" />
</div>

CSS

#parent {
line-height: 200px;
}
#parent img {
vertical-align: middle;
}

以下CSS代码,都以本HTML为基础:

HTML

<div id="parent">
<div id="child">Content here</div>
</div>

三、块级元素

CSS

#parent {
        position: relative;
        height: 200px;
        width: 200px;
       background: #090;
    }

#child {
       background: #900;
        position: absolute;
        top: 50%;
        left: 50%;
        height: 30%;
        width: 50%;
        margin: -15% 0 0 -25%;
    }

四、通用

CSS

#parent {
border: 1px #111 solid;
height: 200px;
display: table;
}

#child {
/* 无法设置宽高*/
display: table-cell;
vertical-align: middle;
}

五、通用,但在IE版本低于7时不能正常工作

CSS

#parent {
        position: relative;
        height: 200px;
        width: 200px;
        background: #090;
    }

    #child {
        background: #900;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 50%;
        height: 30%;
        margin: auto;
    }

六、通用

CSS

#parent {
        background: #090;
        padding: 5% 0;
    }

    #child {
        background: #900;
        padding: 10% 0;
    }

七、通用

HTML

<div id="parent">
        <div id="floater"></div>
        <div id="child">Content here</div>
</div>

CSS

#parent {
        background: #090;
        height: 250px;
    }

#child {
        background: #900;
        clear: both;
        height: 100px;
    }

#floater {
        float: left;
        height: 50%;
        width: 100%;
        margin-bottom: -50px;
    }

参考文章《vertical-centering

时间: 2024-10-09 20:27:31

css控制元素垂直居中的几种方法的相关文章

[转]-CSS 元素垂直居中的6种方法

原文地址:http://blog.zhourunsheng.com/2012/03/css-%E5%85%83%E7%B4%A0%E5%9E%82%E7%9B%B4%E5%B1%85%E4%B8%AD%E7%9A%84-6%E7%A7%8D%E6%96%B9%E6%B3%95/ 利用CSS进行元素的水平居中,比较简单,行级元素设置其父元素的text-align center,块级元素设置其本身的left 和 right margins为auto即可.本文收集了六种利用css进行元素的垂直居中的方

CSS 元素垂直居中的 6种方法

利用CSS进行元素的水平居中,比较简单,行级元素设置其父元素的text-align center,块级元素设置其本身的left 和 right margins为auto即可.本文收集了六种利用css进行元素的垂直居中的方法,每一种适用于不同的情况,在实际的使用过程中选择某一种方法即可. Line-Height Method 试用:单行文本垂直居中,demo 代码: html 1 2 3 <div id="parent"> <div id="child&quo

CSS 元素垂直居中的 6种方法(转)

转自:http://blog.zhourunsheng.com/2012/03/css-%E5%85%83%E7%B4%A0%E5%9E%82%E7%9B%B4%E5%B1%85%E4%B8%AD%E7%9A%84-6%E7%A7%8D%E6%96%B9%E6%B3%95/ 利用CSS进行元素的水平居中,比较简单,行级元素设置其父元素的text-align center,块级元素设置其本身的left 和 right margins为auto即可.本文收集了六种利用css进行元素的垂直居中的方法,

(转)CSS 元素垂直居中的 6种方法

利用CSS进行元素的水平居中,比较简单,行级元素设置其父元素的text-align center,块级元素设置其本身的left 和 right margins为auto即可.本文收集了六种利用css进行元素的垂直居中的方法,每一种适用于不同的情况,在实际的使用过程中选择某一种方法即可. Line-Height Method 试用:单行文本垂直居中,demo 代码: html 1 2 3 <div id="parent"> <div id="child&quo

CSS元素垂直居中的几种方法

在网页响应式布局中,实现水平居中很简单.可是,垂直居中方面,元素的宽度和高度是不可控的,所以很多办法并不适用. 总结了下平时用到的垂直居中的几种办法: demo中HTML代码: <div class="center"> <span></span> </div> 一:使用table-cell; CSS代码: .table{ display: table; width: 100%; height: 100%; } .center{ displ

css中元素居中的几种方法

对于在网页端布局,垂直居中难于水平居中,同时实现水平和垂直居中是最难的.在移动端,因为设备的宽高是可变的,故一些方案很难实现.以下使用几种方案对下面的html去实现居中,如有不足,可以提出宝贵的意见: <div class="center"> <img src="1.jpg" alt> </div> 1. 使用text-align水平居中 这种方案只能使水平居中,要想垂直居中的话,要给div添加padding或给内容添加margi

CSS教程:div垂直居中的N种方法[转]

在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中的确是有vertical-align属性,但是它只对(X)HTML元素中拥有valign特性的元素才生 效,例如表格元素中的<td>.<th>.<caption>等,而像<div>.<span>这样的元素是没有valign特性的,因此使用vertic

使用CSS完成元素居中的七种方法

在网页布局中元素水平居中比元素垂直居中要简单不少,同时实现水平居中和垂直居中往往是最难的.现在是响应式设计的时代,我们很难确切的知道元素的准确高度和宽度,所以一些方案不大适用.据我所知, 在CSS中至少有六种实现居中的方法.我将使用下面的HTML结构从简单到复杂开始讲解: <div class="center">  <img src="jimmy-choo-shoe.jpg" alt></div> 鞋子图片会改变,但是他们都会保持

CSS教程:div垂直居中的N种方法以及多行文本垂直居中的方法

在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中的确是有vertical-align属性,但是它只对(X)HTML元素中拥有valign特性的元素才生 效,例如表格元素中的<td>.<th>.<caption>等,而像<div>.<span>这样的元素是没有valign特性的,因此使用vertic