给标签设定固定字符长度,超出部分用省略号显示。

网页中文字显示时,有时候往往只需要显示前面部分内容,通常情况下给标签加样式即可解决。
下面总结几种情况:
第一种情况:单行显示,超出内容部分省略号显示。标签的样式如下:

div{
    width:100%;
    white-space: nowrap;
    overflow:hidden;
    text-overflow: ellipsis;
}

第二种情况:多行显示,最后一行的末尾用省略号显示。下面以3行为例,如要变换行数,只需要改变下面的数字3即可。标签的样式如下:

div{
    width:100%;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
}

以上两种情况是平时比较多见也是最常用的,最后一种最有意思,它通过设定标签显示字符的长度,比如只显示20个字,超出部分用省略号。这种设置需用到js,下面的例子是我在处理一个网页时,多个段落都需要按此设定,所以用到了each函数,代码如下:

$("div").each(function(){
	var str = $(this).text();
	var s = str;
	if(str.length > 15){
		s = str.substring(0,20) + "...";
	}
	$(this).text(s);
})

或者直接去掉判断函数,代码如下:

$("div").each(function(){
	var str = $(this).text();
	var s = str;
		s = str.substring(0,20) + "...";
	$(this).text(s);
})

你可能感兴趣的:(JavaScript,css)