ホームページ > 記事 > ウェブフロントエンド > 長すぎるtitle_html/css_WEB-ITnoseの表示問題
在td单元格中,有一个过长的title属性,在有的电脑上将鼠标放至td上,显示的是非常宽的一个title,但在其它电脑上执行的则是一个大小适合的title显示界面,请问这可能是什么原因造成的,是IE的版本,操作系统的原因还是IE的设置问题
可能和浏览器有关。
可以加上换行符来分行显示
恩,关于这一块查不到资料,由于公司的操作系统和浏览器是配套的,因此无法断定到底是操作系统的原因还是浏览器的原因
恩,关于这一块查不到资料,由于公司的操作系统和浏览器是配套的,因此无法断定到底是操作系统的原因还是浏览器的原因
放在别的机子上面测试一下。。。
现在求教解决办法,最好能同时兼容两种显示方法,我发现不好处理,因为每个字符的宽度不一样,而会自动换行的IE会有一个固定的宽度而不是长度,怎么样才使过长title显示时自动换行,并且兼容上述的两种显示情况
可能和浏览器的版本有关,但是一般的浏览器是不会在词内换行的,比如title="aaaa....verylong.....aaa" 这种是不会自动换行的,显示不完的就被截断了。所以在可能会换行的地方适当加一些空格可以避免这一问题。如果强制换行也可用转义符\n
显示器分辨率的问题,这个你用firebug在不同分辨率上调试一下就可以了
如果title的内容过多的话并且客户需要显示的话,建议给个小弹窗来显示内容,我也遇到过这个问题 原先比较懒就放在title中结果最后客户还是非要弹窗来显示!
应该是IE的版本问题,和操作系统关系不大
加个换行就应该可以解决你的问题了 换行:
title='1111111111111111111111111111111111111111
2222222222222222222222222222222222222222'
现在求教解决办法,最好能同时兼容两种显示方法,我发现不好处理,因为每个字符的宽度不一样,而会自动换行的IE会有一个固定的宽度而不是长度,怎么样才使过长title显示时自动换行,并且兼容上述的两种显示情况
<script> function fun(){ var arrAll=document.all; for (i=0;i <arrAll.length;i++){ if(arrAll[i].title.length > 80){ // 处理所有title长度超过80的提示 // alert(arrAll[i].title); } } } </script> <body onload='fun()'> <input type='button' value='测试按钮' id='bn' title='1111111111111111111111111111111111111111 2222222222222222222222222222222222222222'/> </body>
<script> function fun(){ var arrAll=document.all; for (i=0;i <arrAll.length;i++){ var size = 0; if(arrAll[i].title.length > 50){ var size = arrAll[i].title.length/2; while(size>30){ size=size/2; } } if(arrAll[i].title.length > 50){ var reg=new RegExp('.{'+size+'}','g'); var titleText = arrAll[i].title.replace(reg,repText); arrAll[i].title = titleText; } } } function repText($1){ return $1+"\n"; } </script> <body onload='fun()'> <input type='button' value='测试按钮' id='bn' title='五笔打字员五笔打字员五木木sssdfsdfsdfsd笔打字员五笔打字员五笔打字员五笔打字员五笔打字员五笔打字员五笔打字员五笔打字员五笔打字员五笔打字员五笔打sdfsdf字员五笔打字员五笔sdfsdfs打字员五笔打字员五笔打字员五sdfsdfsdfsdfsdf笔打字员五笔打字员五笔打字员五笔打字员'/> </body>
支持楼上
现在没环境可试了,先结了