清除网络运营商植入广告CSS代码

前面我发表了屏蔽网络运营商植入广告jQuery代码,但是有一个缺陷,广告仍然会显示一瞬间,虽然一眨眼的功夫就消失了,给人的感觉还是不很好。

所以,我写了一段CSS代码来屏蔽:

#colophon ~ * {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	font-size: 0 !important;
	overflow: hidden !important;
}

注意选择符,因为我网站每个页面的最后一元素ID都是colophon,如果你不确定你页面的最后一个元素是什么,可以在页脚模板(通常是footer.php、footer.tpl)的</body>前面添加一个空元素:

<div id="killAd"></div>

这样,相应的CSS代码为:

#killAd ~ * {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	font-size: 0 !important;
	overflow: hidden !important;
}

可能大家会奇怪为什么用了display属性还要多此一举设置宽度、高度、字体大小以前overflow,其实这是为了保险起见,怕有些广告内联样式里设置了display: block !important

阿里云