使HTML表格单元格的内容适合 - 不包装?

时间:2012-08-16 12:07:25

标签: html css html-table row textwrapping

这是我的情况:

  • 我目前正在完成一个相当庞大的Web应用程序(带有CodeIgniter的PHP,MySQL,Javascript + Ajax + Jquery以及使用各种Javascript库 - 例如dataTables)

问题:

  • 假设我们有一个表格,固定宽度
  • 第一个也是固定宽度。 (让我们说200px
  • 填充表格时:
    • 如果第一列的内容占用的空间小于200px,那就没关系。
    • 如果内容超过200px,则内容被包装,从而产生“双线”效果和更高行,而不是我希望的。

提示:

  • very very very long line“缩小”为类似very very very ...的内容正是我在想的。这样的事情甚至可能吗?服务器侧λ

你会怎么做? (最好以优雅的方式 - '因为,是的,我承认我有一些解决方案,其中没有一个似乎...用户友好...大笑)

1 个答案:

答案 0 :(得分:1)

我认为如果你不使用等宽字体,那么在字符串截断中是不可能的,因此相同数量的字符总是具有相同的宽度。您可以做的是客户端字符串截断:

Calculate text width with JavaScript上的好代码):

CSS:

#testing-div
{
    position: absolute;
    visibility: hidden;
    height: auto;
    width: auto;
}

JS:

var test = document.getElementById("testing-div");
test.style.fontSize = fontSize;
var height = (test.clientHeight + 1) + "px";
var width = (test.clientWidth + 1) + "px";

您可以循环遍历字符串的整个长度,并继续向#testing-div的主体添加字符,计算宽度,并检查其是否合适。如果字符串太长,请确保添加...