2

我想找出已定义的 TD 的宽度style='width: 200px;,但文本使其更长(不中断)。我想找出有效宽度,只要它大于 200px,每次将其中的文本大小缩小约 2px。

这可能吗?

4

2 回答 2

3

这可以在 javascript 中完成,但有点复杂。

这是完整的工作示例:http: //jsfiddle.net/dystroy/kdrrA/

的HTML:

<table><tr><td id=txtcell nowrap><span id=txt>My long text is long. My long text.</span></td></tr></table>
<br>Font Size : <span id=mes></span>​

的CSS:

#txtcell{ max-width:200px;}

的JavaScript:

var fontSize = 20; 
var reduce = function() { 
    while ($('#txt').width() > 200) { 
        fontSize -= 1; 
        $('#txt').css('font-size', fontSize); 
    }
    $('#mes').html(fontSize); // this line is only for demonstration, remove it in "production"
}; 
reduce();

请注意,我必须在单元格中添加一个跨度,因为 jquery 的 TD 宽度计算效果不佳。

于 2012-06-08T07:26:18.377 回答
0

你需要 JavaScript 来实现它。但是如果你想单独使用 CSS,你可以使用 CSS 表达式和expression.

td {width: expression(this.style.width);}

希望能帮助到你!:)

于 2012-06-08T07:10:42.410 回答