display:table-cell的用法简介

display:table-cell的用法简介:
display属性的使用相当频繁,比如display:block或者display:inline等,但是对于display:table-cell可能比较陌生,因为此属性在特定的情况下会发挥很大的作用,下面就简单介绍它的作用,先看一段代码实例:

复制代码
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.51texiao.cn/" />
<title>蚂蚁部落</title>
<style type="text/css">
.parent{
  width:600px;
  height:600px;
  background-color:green;
  vertical-align:middle;
}
.children{
  width:100px;
  height:100px;
  background-color:red;
}
</style>
</head>
<body>
<div class="parent">
  <div class="children"></div>
</div>
</body>
</html>
复制代码

在以上代码中,尽管给父div添加了vertical-align:middle,但是子div还是不能够垂直居中。下面改造一下代码:

复制代码
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.51texiao.cn/" />
<title>蚂蚁部落</title>
<style type="text/css">
.parent{
  width:600px;
  height:600px;
  background-color:green;
  display:table-cell;
  vertical-align:middle;
}
.children{
  width:100px;
  height:100px;
  background-color:red;
}
</style>
</head>
<body>
<div class="parent">
  <div class="children"></div>
</div>
</body>
</html>
复制代码

以上代码的表现可以看出,添加display:table-cell之后,子div在父div中实现了垂直居中效果,不过需要注意的是,在IE6和 IE7这样低版本的浏览器中无效。这里可以引出display:table-cell的作用,它可以指定对象作为表格单元格,类同于html标 签<td>,也就是说它可以使对象具有表格单元格的属性,所以在第二个实例中,添加了display:table-cell属性之后,div 就具有了valign属性,于是vertical-align:middle也就生效了。

posted @ 2015-07-10 13:42  踱步的羊驼君  阅读(2691)  评论(0编辑  收藏  举报