使用 JQuery 插入 INPUT 字段时如何控制表格单元格宽度

发布于 2024-11-02 21:23:10 字数 641 浏览 1 评论 0原文

我在针对 webkit 的网页上有一个就地编辑功能。 HTML 很简单。

我使用 jQuery 将单击处理程序附加到每个单元格:

$("table td").click(editMe);

function editMe(e) {
  var w = $(this).width();  // returns cell width
  $(this).html("<span>Foo</span");  // does not change table width
  $(this).html('<input type="text" />');  // CAUSES CELL width to BLOW UP! (gets VERY wide)

  var in = $('<input type="text" />');
  in.width(w-10);
  $(this).html(in);    // CAUSES CELL WIDTH TO BLOW UP!  (nearly doubles)
}

设置多少宽度似乎没有任何区别。输入没有填充或边距,没有边框。表格单元格的宽度变得疯狂。重点是 Webkit (Safari / Adob​​e AIR)。但为什么?

如何让输入尺寸与其要插入的表格单元格匹配?

I've got an edit in place feature on a web page that is targeted for webkit.
The HTML is trivial.

I attach a click handler to each cell with jQuery:

$("table td").click(editMe);

function editMe(e) {
  var w = $(this).width();  // returns cell width
  $(this).html("<span>Foo</span");  // does not change table width
  $(this).html('<input type="text" />');  // CAUSES CELL width to BLOW UP! (gets VERY wide)

  var in = $('<input type="text" />');
  in.width(w-10);
  $(this).html(in);    // CAUSES CELL WIDTH TO BLOW UP!  (nearly doubles)
}

No amount of setting the width seems to make ANY difference. Input has no padding, or margins, no borders. The table cell width just goes berzerk. Focus is on Webkit (Safari / Adobe AIR). But WHY?

How can I have the input dimensions MATCH the table cell it is being inserted into?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

罗罗贝儿 2024-11-09 21:23:10

好的,
我没有得到确切的答案,但事实证明罪魁祸首在于960Grid CSS框架的reset.css文件中。我不知道到底是哪个设置导致了奇怪的行为,但删除该文件修复了它。

960Grid 是一个我喜欢使用的简单 CSS 框架,但是他们的 reset.css 文件中的一些内容导致我的表格崩溃了。当我删除该文件后,表的行为就如预期的那样。

Okay,
I didn't get the exact answer, but it turns out the culprit lay in the reset.css file of the 960Grid CSS Framework. I don't know exactly which setting caused the bizarre behavior, but removing that file fixed it.

960Grid is a simple CSS Framework I like to work with but something about their reset.css file caused my tables to blow up. As soon as I removed that file, the tables behaved as expected.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文