是否有一种方法来沉默所有的css样式的页面

Is there a way to silence all css styles of a page?

本文关键字:css 沉默 样式 方法 是否 一种      更新时间:2023-09-26

我得到了一个css表,基本上是一个广告(灰色的整个屏幕,框在中间的广告内容,不能点击任何地方,但"广告框")。

我想让它像这样-如果用户来到我的网站,cookie没有设置,我加载我的"ad css"表在我的索引页的顶部(所以我将我的广告在中间,然后网站的其余部分是灰色的)。一旦用户关闭"ad",css表就会消失,我的网站就会像没有加载任何"ad css"表一样工作。

我目前的问题是,一旦我加载我的"广告"css表,它搞砸了(例如图像,我加载不适合在div),因为网站的css表。

是否有可能在加载广告时沉默所有其他css表,但"ad"表?或者我该怎么做还有其他建议吗?

如果你的CSS选择器的效果超出了你的预期,那么听起来你的CSS选择器太宽泛了,但是

是否有可能在加载广告时沉默所有其他css表,但"ad"表?

是的,HTMLStyleElements和StyleSheets都有一个名为disabled的属性,当将设置为true时,有效地"关闭它们"。<style>元素应该有一个相同的属性,但是我发现它似乎没有被强制执行。

因此,要使用这些知识,只需循环所有<style>元素(例如通过document.getElementsByTagName('style'))并设置.disabled = truefalse以重新启用它们。