1

我正在抓取这个新闻网站:http ://www.nu.nl/

如果您打开控制台并输入:

$('*').css('background', 'none');

您将看到所有背景属性都被删除,除了第一篇文章中的“蓝色”乡绅。当我跟踪原始 CSS 时,我看到它分配了 !important 声明。我不知道这是否导致它的持久性。在 Jquery 和 Javascript 或 CSS 方面,我可以尝试如何摆脱蓝色背景?

请注意,我不想以元素本身为目标,而是继续使用 all (*) 选择器或一些 Javascript 等效项。

4

1 回答 1

1

jQuery 无法识别!importantcss 定义中的属性。您只需要一个更具体的分层选择器。只需创建一个新类,然后使用 addClass。

$('head').append('<style type="text/css">html #page .noBG{ background:none !important; }</style>');

然后只需将该类添加到所有内容中。

$('*').addClass('noBG');

编辑

根据以下评论,您可以尝试

$('head').append('<style type="text/css">html body#noBG *{ background:none !important; }</style>');

然后将ID添加到body

$('body').prop('id', 'noBG');

这是一个非常具体的选择器。有些规则可能仍然会通过,您必须根据场景尝试不同的变化。

于 2013-05-01T14:55:37.117 回答