【发布时间】:2013-06-30 00:12:20
【问题描述】:
如何控制iframe 中正文元素的背景图像和颜色?请注意,嵌入的 body 元素有一个类,iframe 属于我网站的一部分。
我需要这个的原因是我的网站将黑色背景分配给正文,然后将白色背景分配给包含文本的 div。 WYSIWYG 编辑器在编辑时使用iframe 嵌入内容,但它不包含 div,因此文本很难阅读。
iframe 在编辑器中的主体有一个在其他任何地方都没有使用过的类,所以我假设它被放在那里这样这样的问题就可以解决了。但是,当我将样式应用于class.body 时,它们不会覆盖应用于正文的样式。奇怪的是样式确实出现在 Firebug 中,所以我不知道发生了什么!
谢谢
更新 - 我尝试了@mikeq 的解决方案,即向作为主体类的类添加样式。这在添加到主页的样式表时不起作用,但在与 Firebug 一起添加时它确实起作用。我假设这是因为 Firebug 应用于页面上的所有元素,而 CSS 未应用于 iframe。这是否意味着在使用 JavaScript 加载窗口后添加 css 会起作用?
【问题讨论】:
-
虽然不可能触及 iframe 中的任何内容,但将每个 Ajax 的 URL 加载到
<div>有时是一种解决方法(如果给定的 CORS-Header 允许这样做)...(并在途中通过正则表达式“清理”加载的数据。是的,所有 hacky...) -
如果页面域匹配,您可以使用 javascript,但为什么不在内部页面的 HTML 中放置一个样式块来覆盖您想要更改的颜色?只需在覆盖中添加更多选择器或使用重要!如果所有其他方法都失败了,则覆盖您只希望在该页面上的任何颜色样式...
标签: css iframe styles overriding