日期:2013-06-03  浏览次数:21051 次

普通我们看到的比如旧事列表,为了使文字不回行,控制字数,会通过程序让多余的字符显示省略号,我们只使用CSS可以达到同样的效果,虽然不完满。

li {
   width:50px;
   white-space:nowrap;
   text-overflow:ellipsis;
   overflow: hidden;
   }

首先是一个容器,可以是div,li,td等等,先定义宽度,“white-space:nowrap”是强制在一行内显示所有文本,不回行。“text-overflow:ellipsis”就是关键了。

text-overflow是CSS3新增的属性,IE6以上版本支持。它可以带2个参数:clip [不显示省略标记(...),而是简单的裁切],ellipsis[当对象内文本溢出时显示省略标记(...)]。所以,这个方法是不支持Firefox的。因此,我们还要加上一句overflow: hidden,让多余文字在ff中隐藏。

虽然打到了效果,但是由于用程序控制这种效果也很方便,而且没有浏览器兼容性的问题,所以用CSS控制的方法就显得鸡肋了。