Double Star 呀!高手提问更要认真回答!好像有点儿思路了,俺去试试看,稍后回来!顶一下先,哈

解决方案 »

  1.   

    <table border=1>
    <tr>
    <td style="width:200px;" id="td1">内容内容内容内容内容内容内容内容内容内容</td>
    </tr>
    </table>
    <script>
    function $(o){return document.getElementById(o)}
    $("td1").style.fontSize = "12px";
    var w = $("td1").style.width;//单元格样式宽度
    $("td1").style.wordBreak = "keep-all";
    var W = $("td1").offsetWidth;//单元格不换行时的实际宽度
    alert(w)
    while((W-4) > parseInt(w)){//循环缩小字体
    $("td1").style.fontSize = parseInt($("td1").style.fontSize) - 1 + "px";
    W = $("td1").offsetWidth;
    alert(W)
    }
    //$("td1").style.wordBreak = "break-all";
    </script>
    可以了哈
      

  2.   

    呵呵,毛毛虫动作还挺快,思路和俺的一样,俺就不贴了。不过俺还想到一种解法,就是在 td 里放个 div ,当然要指定 div 的 width 属性,之后就是比较 width 和 scrollWidth 属性了,如果 scrollWidth > width 那么就缩小字体!直到比较返回 false。其实解法二与解法一没啥大区别,就是表格不会乱动了,哈
      

  3.   

    这个思路可以实现,不过跟打印结合起来还是要进行比较烦琐的脚本css控制,因为屏幕看和打印用的css不一样,屏幕上显示要求字能看清(最低12px,可换行),但要在打印时缩小字体使不换行。都说做WEB麻烦,确实麻烦啊,鸡毛蒜皮的事情太多了。