实现div内部文字,一旦超出div的范围,就不显示,并且超出的用"..."显示

时间:2022-03-11 16:21:46

当内部不足以填充满整个div的时候,文字内容以居中显示,当内超出范围就截断,多出的部分并以.。。。来代替。

方法1:只用CSS样式进行控制,但是找个方法的兼容性不知道怎么样,反正在火狐11上是成功了!上代码

<div id="gaoshi1" style="WORD-WRAP: break-word">

只写整个是不行的,效果应该就是截断,记住div一定要设定width和hight;

最后要和overflow和text-overFflow:属性一起使用:

<div align="center" style="text-overflow:ellipsis;overflow:hidden;width:90px;height: 15px"><s:property value='fileName' />wwww</div>

方法2:

直接上js解决问题,这个不用考虑兼容问题,但是在页面保存的也不完整内容,所以也有弊端,要是也要使用的话,就麻烦了!

<script>
function csubstr(str,len){
 if(str.length>10){
  return str.substring(0,len)+"...";
 }else{
  return str;
 }
}
</script>

<div ><script>document.write(csubstr("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",10));</script></div>

方法3:使用input标签模拟,但是也有问题!

<input type="text" value="<s:property value='fileName' />" readonly="readonly" size="13"/>

就是不能使,多出来的的代码以...的形式显示,要是必须用的话,还需要加js进行辅助,将readonly设置成readonly,大小设置成13