我的网页里面有一个iframe,但我想更改css /字体样式等。
<iframe name='iframe1' id="iframe1" src='<?php echo "http://micro.shoretel.com/www/?v=$version&s=$style&l=$logo&p=" . $_GET["p"] ?>' frameborder='0' width='660' height='450'></iframe>
如何覆盖iframe内容的CSS样式?
答案 0 :(得分:19)
如果iframe
在您自己的域中加载了一个页面,并且您希望静态更改iframe
的样式,那么您可以更改CSS文件中的样式规则,这就是@Justin808所指的。
但是,如果您想动态更改样式,和iframe
在您自己的域上加载页面,您可以使用jQuery执行此操作:< / p>
$("iframe").contents().find("element-selector").css("border-color", "blue");
如果iframe
在另一个域上加载了某个网页,那你就不走运了,请点击this link,在那里你可以读一下为什么这样做'工作。
如果您使用的是HTML5 ,则可以使用postMessage在页面与iframe
之间进行通信。
iframe
内的页面具有“编辑权限”, @crdunst 的解决方案将正常运行,以便您可以对其进行编辑以了解传递给它的参数,然后使它对这些参数起作用。它不像使用jQuery那样动态,因为它只允许你通过重新加载iframe
内的页面并传递另一组参数来改变样式。
答案 1 :(得分:5)
我不确定这是否是user2146515所指的内容,但如果您可以访问iframe中的网页,则可以在网址上传递值,然后在iframe内容中使用这些值:
<iframe src="http://www.youriframecontent.com?bg=ffffff&text=000000"></iframe>
然后在iframe页面中,检查值并根据这些值添加样式