我开发了一个动态广告横幅,其中包含通过javascript加载到主机网站的html和样式。在一个特定的网站上,主页面样式表中的某些样式会影响我正在动态加载的html。
是否有一种技术可以让动态加载的html只显示我从hss加载的CSS中的渲染样式,并忽略主页中的任何样式?
任何建议表示赞赏。
答案 0 :(得分:2)
将横幅放入iframe。
答案 1 :(得分:0)
添加!重要的CSS,如
p {color:#ff0000!important; }
答案 2 :(得分:0)
是的,有一种非常简单的方法。为什么不将您的类与主页HTML分开。如果您希望没有冲突,请给他们一个唯一的标识。
实施例
您的主页有一个css类.input
将动态加载页面设为.Dybamically_input
,这会将某些内容作为命名空间服务。此外,您可以将!important
用于您确定要添加的属性。
答案 3 :(得分:0)
有一种不断发展的标准可以将范围块引入CSS,但这种标准尚不足以支持任何用途。您可以使用!important指令,但如果您不仔细应用它,这可能也会影响基础文档。
最好的解决方案是通过将div中的所有HTML包含在具有唯一命名类的div中来创建范围(并使用您自己的命名空间,例如'cog_myAd'来尝试保证唯一性。然后应用样式对于那个类,使用!important可能需要覆盖可以在级联样式下更改的样式。
答案 4 :(得分:0)
如果您已将CSS文件附加到HTML页面,那么唯一的解决方案就是对所有冲突的CSS属性使用!important
-
.className{
color: red !important;
}
答案 5 :(得分:-1)
使用内联样式(您要设置样式的所有横幅元素上的样式属性)而不是外部css文件 - 这样您就不会发生冲突。
其他选项建议使用IFrame。