2012-01-12 36 views
0

我面临一个问题,我想使用jQuery去除容器div的所有子元素边框。如何使用jquery删除父div的所有子元素的边界?

子元素可以是图像,div,p标签或锚点或任何HTML标签。

这里是我的尝试:

$(document).ready(function(){ 
    $("#div1").children("div").css("border","0px solid red"); 
}); 

jsfiddle link

+1

所有的孩子或所有的后代? – 2012-01-12 10:50:21

+1

始终在问题本身中包含相关代码/标记*。为什么:http://meta.stackexchange.com/questions/118392/add-stack-overfow-faq-entry-or-similar-forputing-code-in-the-question – 2012-01-12 10:50:58

+0

只限于儿童或儿童的孩子? 那么行'

mayank mathur
'''怎么样? – 2012-01-12 10:53:26

回答

4

更改孩子去寻找,像这样。

$(document).ready(function(){ 
    $("#div1").find("*").css("border", "0"); 
}); 

而这里的小提琴:http://jsfiddle.net/Yu25h/

0

The all selector?

$("#div1").find("*").css("border","0"); 
+0

呃?真的吗?我已经使用它,它已通过严格的X浏览器QA并进行测试并投入生产。 – karim79 2012-01-12 10:51:13

+0

@ T.J。 Crowder:这就是说*用'.css()'检索*,而不是设置。或者至少,这就是我的理解。 – thirtydot 2012-01-12 10:52:45

+0

如果您在@ T.J.Crowder发布的文章中写道“例如,如果您想检索渲染的边距”,那么它就是专门谈论检索的。 – Filip 2012-01-12 10:54:34

0

嗯,这很简单:

$("#div1 *").css({ 
    border: "none" 
}); 

或者,如果你有你的父母的一个jQuery对象:

var $div = $("#div1"); 
$div.find("*").css({ 
    border: "none" 
}); 

如果您知道你只是想从div元素中删除边框而不是里面的所有元素,只需使用:

var $div = $("#div1"); 
$div.find("div").css({ 
    border: "none" 
}); 
0

为所有儿童将是 $("#div1").children().css("border", "0");

但是,如果你通过样式属性添加边框像以前那样你也可以去

$("#div1").children().removeAttr("style");

希望这有助于