使用display:inline-block垂直居中元素

时间:2011-04-16 16:57:28

标签: css

我的导航中有以下结构:

ul > ((li>a) * 2)

元素的css是:

ul {height: 29px; list-style: none;}
li {
    display: inline-block;
    height: 23px;
    zoom: 1;
    *display: inline;
}

如何在li中垂直居中li?
谢谢!
编辑: a元素是li元素的子元素。

2 个答案:

答案 0 :(得分:0)

如果你的高度是固定的,最简单的解决方案是给li一个3px的上边距。

替代:

ul {
  height: 26px;
  padding-top: 3px;
  list-style: none;
}

答案 1 :(得分:0)

line-height: 29px上的

li应该如果文本全部在一行

ul {
  height: 50px; 
  background: #eee; 
  border: 1px solid #000;
}

li {
    display: inline-block;
    zoom: 1;
    *display: inline;
    line-height: 50px; /* same as UL height */
}