表数据宽度

时间:2011-03-07 14:52:43

标签: javascript jquery

我正在编写an editor,并希望输入字段为列的宽度。 到目前为止,我有:

$td.html('<input name="test" value="' + $td.text() + '" size="' + $td.width() + '">');

问题是:$ td.width()报告的数字如80和25,但输入需要是字符宽度。 即使我的CSS说:

html {
    font-size:20px;
}

我没有看到$ td.width()和size属性之间有任何关系。你会认为它是$ td.width()/ 20.

2 个答案:

答案 0 :(得分:2)

来自W3Schools http://www.w3schools.com/tags/att_input_size.asp

  

由于size属性是可视的   设计属性,建议   使用CSS代替

$td.html('<input name="test" value="' + $td.text() + '" style="width: ' + $td.width() + '">');
// what does $td.width() return? with px? if not add 'px' or other required unit too.

答案 1 :(得分:1)

我相信font-size:20px指定字体的高度,而不是宽度。宽度将严重依赖于使用的字体,并将根据字符而变化(除非固定宽度)。您需要找出文本框使用的默认字体。

但是,我发现以下代码段声称设置文本框的宽度,而不是字符:

<input type="text" name ="sizeGiven" style="width: 200px" />

尝试输入width: 100%或类似内容,看看是否有效?