css – 垂直中心single-AND多行li文本

前端之家收集整理的这篇文章主要介绍了css – 垂直中心single-AND多行li文本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个无序的列表与背景图像集。所有列表项具有相同的高度,背景图像位于左中心。

每个项目的文本应该垂直居中。这对单行文本(通过根据li的高度设置行高)而不是两行文本。

我可以在两行项目中添加“line-height:normal”,但是我想要一个适用于所有项目的解决方案。

我该怎么做?

例:

li { 
    list-style-type:none; 
    padding-left:40px; 
    height:36px;
    line-height:36px; 
    background:url('tick.png') no-repeat 0 50%; 
}

解决方法

这是一个最流行的解决方
li {
    width           : 200px;
    line-height     : 100px;
    height          : 100px;
    border          : 1px blue solid;        
}
li span {
    display             : -moz-inline-Box;  /* FF2 or lower */
    display             : inline-block;     /* FF3,Opera,Safari */
    line-height         : normal;
    vertical-align      : middle;    
}

li span     { *display  : inline;} /* haslayout for IE6/7 */

HTML

<ul>
   <li><span>My text</span></li>
   <li><span>My longer text</span></li>
   <li><span>My text,but this time is really wide</span></li>
   <li><span>My text,some thoughts about how much it will expand in this item.</span></li>
</ul>

为了简洁,我使用了star hack,你应该避免。只要使用html5boilerplate解决方案,它将使用body标签上的条件注释

猜你在找的CSS相关文章