微博客

先解决问题:
text-ovewflow终极解决方案:

FireFox的文本溢出采用jquery插件解决,其他浏览器还是采用text-overflow来解决:
http://www.bramstein.com/projects/text-overflow/   Query Text Overflow plugin 

调用代码如下:
<script type="text/javascript">
            $(function() {
    $('.snip li').textOverflow();/*ff调用*/
           });
  </script>

/*------------------------------------------------------------*/

 <style>        
   .snip li {
    width: 500px;/*ToDo:根据实际需要修改*/
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;/*opera浏览器hack*/
   table-layout:fixed;/*<tr><td>要支持text-overflow 的话,要加上这段代码*/
   }/*ie调用*/
</style>

 

另:网络上流传着许多关于如何解决文本溢出标签text-ovewflow的兼容方案,经过我的测试,实用性都不是很好,其中总结的最好的一篇文章是这篇:
http://www.zhangxinxu.com/wordpress/?p=230#zxx_f关于文字内容溢出用点点点(…)省略号表示 (张鑫旭)

但文章也存在以下问题:
1、关于第二条:使用ellipsis.xml文件使Firefox支持文字溢出后点点点省略号表示。问题:不知道是不是以前好使,至少我今天(2011.3.15)用ff3.0测试是不好使的。
2、关于第三条:我对网上些文章和网站的不满。我和这位作者同样的感触:愤慨。没错,用:after伪类的方法的确是蠢到家了!
3、关于第四条:我自己想出来的方法——margin负值定位法。我没试验这种方式,即使这种方式是好使,本人认为也是不可取的,因为人为的在html页面增加了一层嵌套关系不说,还多了一个div(不对,文本溢出一般是用于标题的循环溢出处理,那这个就不是一个div这么简单了)
4、关于第五和第六条Jquery方案。我是js初学,也看不懂作者的代码(你可以尽情的鄙视我O(∩_∩)O!)但我应用作者的代码出现如下问题:如果控制溢出的元素中含有除文字外的其他元素(例如img)的时候,代码将会隐藏除文本外的其他元素;如果溢出文本和图像并排,文字则会依次下沉一行。
FF下文本溢出的text-overflow最新解决方案.rar

posted on 2011-03-15 10:43  飞鸟42  阅读(632)  评论(0编辑  收藏  举报