1

我看过:如何使用 jquery 设置边距?

这就是我正在尝试的:

$(document).ready(function () {
    $(".content").each(function (el) {
        el.css('margin', '0px');
    })
});

但这不起作用;现在我必须在样式表中将边距设置为零。

4

2 回答 2

4

css已经迭代了每个元素:

$('.content').css('margin', '0');

您遇到的问题是each将 dom 节点本身传递给函数,但它是第二个参数:

$('.content').each(function (i, ele) {
    $(ele).css('margin', '0');
    //the context is also set to the element
    $(this).css('margin', '0');
});

重新阅读您的问题后,您似乎选择了错误的选择器,我不知道您是想要所有children还是 all descendants,选择器应该是:

$('.content > *')

-或者-

$('.content *')

分别

于 2012-05-17T18:18:43.147 回答
3

这应该可以解决问题。

$(document).ready(function () {
    $(".content *").css('margin', '0px');
});

问题是您在元素本身上设置边距,而不是在其子元素上。
选择器的.content *意思是“元素内具有类内容的任何东西”。(任何东西,而不仅仅是直接的孩子。)

于 2012-05-17T18:18:51.557 回答