这有点难以解释。我正在创建一个网页,其中显示了其他网页在浏览器中的呈现方式。这是我遇到的问题的简化版本
<div id="test">This is an example of page 1</div>
<div id="test">This is an example of page 2</div>
如您所见,两个div都具有相同的ID。我无法在我的情况下更改ID,这会导致问题。我还有其他各种CSS和javascript问题。每段代码都与另一段相互冲突。所以,我正在寻找一种方法来独立于其他所有部分进行渲染。一种方法是为每个代码段创建一个iframe。但这需要我为每个部分创建一个单独的网页,对吗?或者,是否可以通过在其中输入代码而不是URL来使iframe工作。
答案 0 :(得分:1)
HTML文档中每个元素只能有一个id。因此每个div必须具有不同的ID,否则将遇到问题。如果多个元素需要具有相同的名称,则可以使用类<div class="test" id="unique-id"></div>
,然后使用<div class="test" id="another-id"></div>
。
要回答有关iframe的问题,是的,您需要为每个iframe设置单独的页面。无法在iframe标记内编写代码来单独执行。请参阅iframe spec。
修改:自己阅读iframe规范后,您似乎可以使用srcdoc
属性覆盖src
属性中的内容,但它看起来像this isn't entirely accepted across browsers。 MDN has more information about the attribute.