0

我试图给标签内的内容一个边距使用

$('td *').css("margin-right","100");

没有成功http://jsfiddle.net/R3UDU/7/

为什么这不起作用?

4

4 回答 4

1

padding-right 可以吗?

http://jsfiddle.net/R3UDU/8/

$('td').css("padding-right","100px");

是的,删除“*”并将 px 添加到样式中

于 2013-06-17T14:54:46.860 回答
1

错了两点:

  1. 您的 TD 中没有任何元素。
  2. 您尚未指定保证金的单位。

我为您创建了一个示例,使用 TD 内的跨度并将右边距设置为 100 像素:http: //jsfiddle.net/R3UDU/9/

当然,如果您的 TD 中有多个元素,这可能会变得非常荒谬。如果您只想定位 TD 的直接子元素而不管元素类型,请尝试:

$('td > *').css('margin-right', '100px');

但是,如果那是您想要的,为什么不使用填充?

$('td').css('padding-right', '100px');

甚至更好,只需使用 CSS:

td {padding-right: 100px;}

或者:

td > * {margin-right: 100px;}
于 2013-06-17T14:56:48.900 回答
1

td的只有文本节点,你不能将该css应用于文本节点 -

你可以这样做 -

$('td').contents().wrap($('<span/>').css("margin-right", "100px"));

演示---> http://jsfiddle.net/R3UDU/10/

于 2013-06-17T14:59:36.777 回答
0

您是否要在文本右侧放置空格?如果是这样,您想要的是“填充”,而不是“边距”。

尝试:

td{border:1px solid green;padding-right:100px;}
于 2013-06-17T14:58:57.147 回答