码迷,mamicode.com
首页 > Web开发 > 详细

css技巧——垂直居中

时间:2015-07-24 18:06:50      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:

1、父元素确定的单行垂直居中

通过设置父元素的 height 和 line-height 高度一致来实现的。

2、父元素确定的多行垂直居中

父元素高度确定的多行文本、图片、块状元素的竖直居中的方法有两种:

2.1、vertical-aligh方法:使用插入 table (包括tbody、tr、td)标签,同时设置 vertical-align:middle。

说到竖直居中,css 中有一个用于竖直居中的属性 vertical-align,但这个样式只有在父元素为 td 或 th 时,才会生效。所以又要插入 table 标签了。

<body>
<table><tbody><tr><td class="wrap">
<div>
    <p>看我是否可以居中。</p>
    <p>看我是否可以居中。</p>
    <p>看我是否可以居中。</p>
    <p>看我是否可以居中。</p>
    <p>看我是否可以居中。</p>
</div>
</td></tr></tbody></table>
</body>

  因为 td 标签默认情况下就默认设置了 vertical-align 为 middle,所以不需要显式设置。

  2.2、激活vertical-align属性方法:

在 chrome、firefox 及 IE8 以上的浏览器下可以设置块级元素的 display 为 table-cell,激活 vertical-align 属性,但注意 IE6、7 并不支持这个样式。

<style>
.container{
    height:300px;
    background:#ccc;
    display:table-cell;/*IE8以上及Chrome、Firefox*/
    vertical-align:middle;/*IE8以上及Chrome、Firefox*/
}
</style>

<div class="container">
    <div>
        <p>看我是否可以居中。</p>
        <p>看我是否可以居中。</p>
        <p>看我是否可以居中。</p>
        <p>看我是否可以居中。</p>
        <p>看我是否可以居中。</p>
    </div>
</div>

  3、隐性改变元素display值

  当为元素(不论之前是什么类型元素,display:none 除外)设置以下 2 个句之一:

  1. position : absolute
  2. float : left 或 float:right

元素会自动变为以 display:inline-block 的方式显示,当然就可以设置元素的 width 和 height 了且默认宽度不占满父元素。

css技巧——垂直居中

标签:

原文地址:http://www.cnblogs.com/mmlvj/p/4674003.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!