2009.10月15ASP中新闻标题太长时,省略号显示过长内容

标题太长时,往往会把界面撑开,影响美观,所以我们需要省略过长的文字内容。

方法一、在ASP中使用mid()函数

<%=mid(rs("title"),1,10)%>

该代码表示,显示从第一个字符开始,长度为10的标题内容
(这种方法非常简单,但多余内容不用省略号代替)

方法二、ASP判断语句
比较完美的方法 程序代码
<%if len(rs.Fields.Item("title").Value)>10then
response.Write left(rs.Fields.Item("title").Value,10)&"......"
else
response.Write rs.Fields.Item("title").Value
end if %>

方法三、自定义函数-过长的文字用省略号代替
 程序代码
<%
function cLeft(str,n)
dim str1,str2,alln,Islefted
str2 = ""
alln = 0
str1 = str
Islefted = false
if isnull(str) then
cleft = ""
exit function
end if
for i = 1 to len(str1)
nowstr = mid(str1,i,1)
if asc(nowstr)<0 then
alln = alln + 2
else
alln = alln + 1
end if
if (alln<=n) then
str2 = str2 & nowstr
else
Islefted = true
exit for
end if
next
if Islefted then
str2 = str2 & ".."
end if
cleft = str2
end function
%>

使用该函数:

 程序代码<%=cleft(rs("title"),10)%>


这个效果如果是用在链接里,则在<a>标签中加title=""内容就是鼠标放上面显示的文字了


用CSS实现还可以防止标题被截掉之后影响搜索引擎收录。

使用方法:在CSS中同时应用width=""; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;才能达到效果。

width="";定义显示宽度

overflow:hidden; 溢出隐藏

text-overflow:ellipsis;省略号显示溢出文本内容

white-space:nowrap; 强制文本在一行内显示


用width指它好宽度、overflow:hidden;将超出的内容隐藏就行了


在ie下加上text-overflow:ellipsis;效果加你上面的一样,标题过长会自动显示省略号

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值