标题太长时,往往会把界面撑开,影响美观,所以我们需要省略过长的文字内容。
方法一、在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;效果加你上面的一样,标题过长会自动显示省略号