我使用'css a'有'page a'。此页面的边距设置为css。 我还有一个'页面b'使用'css b'。此页面的边距也设置为css,大小与'css a'(10px)相同。
我有什么方法可以做到这一点,以便当我自己查看'page a'时它有边距,但是当在'page b'上的iframe中查看时,边距不适用于'page a' 。我知道这是一个很长的问题,但基本的问题是我得到了iframe内容的“双倍边距”:来自“页面a”的边距,然后来自“页面b”的边距!
我想一种方法是设置iframe不受'page a''边距的影响。有没有什么方法可以设置'css a'来从边距中排除iframe,这样只会应用来自css b的边距,页面仍然会对齐。那可能吗?
感谢您的帮助
马特
答案 0 :(得分:1)
如果网页位于iframe中,您可以使用Javascript更改边距。
答案 1 :(得分:1)
我不知道从a.css中指定它的方法,但是如果你将以下内容添加到b.css:
iframe { margin:-10px; }
......它可能有用。
编辑:带有a.html的iframe是b.html中唯一包含的项目吗? 你有测试文件吗?
编辑(2):在css中,您可以将其指定为
iframe#head { ...; }
此外,我认为您可以评论对您自己的问题的回答。我可以mine。
答案 2 :(得分:1)
我真的很抱歉,我知道每个人都对发布答案感到非常沮丧,而不是对堆叠溢出和刚刚学习的新评论。怜悯!我已经弄清楚我做错了什么,现在我有这个'开放id'的东西,我会尝试在正确的地方发布。我害怕这次虽然我必须发布作为答案,因为我开始这个问题没有我的开放ID,所以仍然无法评论那些东西....
现在好了,这就是'测试用例':http://cart3.jaspers-sensations.com/test/pagea.html
第b页是:http://cart3.jaspers-sensations.com/test/pageb.html css a是:http://cart3.jaspers-sensations.com/test/stylea.css css b是:http://cart3.jaspers-sensations.com/test/styleb.css
答案 3 :(得分:1)
阅读your clarification之后,我认为你不能完全用CSS做到这一点。我很确定CSS不能跨框架。
但是,如果两个文档都位于同一个域中,您应该能够使用JavaScript执行此操作。
例如,这应该适用于您的示例页面。将以下属性添加到<iframe>
:
onload="window.frames[0].document.body.style.margin = 0"
至少可以在Firefox 3和Opera 9中使用。但它确实是老式的JavaScript,考虑到我的浏览器在变体工作方面有点变幻无常,我不确定应用到真实网站会有多容易。
比我更精通JavaScript的人应该能够提供帮助。
这可能会有所帮助: