今天我们来介绍在首页列表页文章标题过长自动加省略号方法!

第一种方法:修改模板标签

存在问题:

       用过DEDE默认模板的都知道,DEDE首页文章标题的长度大概都在40字符左右。如果添加的文章标题过长,会被自动截断,使文章可读性变差。

解决思路:

  • 当文章标题过长时,自动截断并加上省略号…
  • 在A标记中加上title属性,使标题全部显示

解决办法:

  1. 在index.htm模板中,找到<a href="[field:arcurl/]">[field:title /]</a>这样的代码,修改为:
    <a href="[field:arcurl/]" title="[field:title /]">[field:title function='( strlen("@me")>42 ? cn_substr("@me",42)."…" : "@me" ) ' /]</a>
    title="[field:title /]"的作用是当鼠标经过时,有文字提示;
    [field:title function='( strlen("@me")>42 ? cn_substr("@me",42)."…" : "@me" ) ' /]的作用是当标题超过42个字符时,自动加上省略号
  2. 在上面的语句的上方,会有类似这样的代码{dede:arclist flag=’c’ titlelen=80 row=6},将titlelen=80的80的数值修改的尽量大些,以保证文章标题能全部显示。

二种方法:修改CSS样式

修改CSS文件或者直接在A标记中加上style属性来控制。形式如下:

<a style=”width:200px; text-overflow:ellipsis; white-space:nowrap; overflow:hidden;” href=”http://www.visvik.net/”>青岛网站制作</a>

  • width:200px; 控制A标记的宽度;
  • text-overflow:ellipsis;当超过定义的宽度时,显示省略号;
  • white-space:nowrap;强制文本在一行内显示;
  • overflow:hidden:溢出内容为隐藏。
注意:通过CSS控制,好处是标题完整,对SEO有利。缺点是此设置不支持Firefox浏览器,其它如IE、Chorme、Opera都支持。