**
一. 需求:
**
列表页中,控制某一列中的文字显示:只显示前16个字符,超出部分用省略号代替。当鼠标悬停时,显示该列的全部内容。
**
二. 解决方案:
**
使用css来处理这个问题:
在jsp文件中,添加内部样式:
.ellipsis {
overflow: hidden; /*自动隐藏文字*/
text-overflow: ellipsis;/*文字隐藏后添加省略号*/
white-space: nowrap;/*强制不换行*/
width: 16em;/*不允许出现半汉字截断*/
}
然后,在列中使用该样式:
<td><div class="css2" title="${msgContent}">${msgContent}</div></td>
即可。
注意:
1.在div里面添加:
title="${msgContent}"
这一语句即可实现鼠标悬停显示全部文字效果。
2.该样式直接添加在td中,如写成:
<td class="css2">${item.msgContent}</td>
无法实现省略号的效果。需要添加一个div容器。
**
三.补充方式:
**
百度的时候,还找到了另一个方法,就是直接使用struts2自带的属性
先引入
<%@ taglib prefix="s" uri="/struts-tags" %>
然后在td中写:
<s:if test="remark.length()>5">
<s:property value="remark.substring(0,5)" />
<a href="#" style="cursor:default;text-decoration:none;color:#0000ff;" title="${item.remark }">...</a>//鼠标移动到省略号时显示省略的字符
</s:if>
<s:else>
<s:property value="remark" />
</s:else>
不过由于项目里面没有引入struts,因此没有去验证这个方法是否正确。先添加在这里做个备份。
博客讲述了如何在jsp中实现列表页文字限制显示16个字符并用省略号替代,当鼠标悬停时显示全部内容。解决方案是利用css,通过设置`text-overflow: ellipsis;`和`white-space: nowrap;`以及`overflow: hidden;`来实现,同时提到在div内添加`title`属性可实现悬停显示全文。另外,文中也提及了struts2的一种可能方法,但因项目未使用struts2而未验证。
3130

被折叠的 条评论
为什么被折叠?



