为什么iframe是一个标签,如果你不能像这样定义它的内容:
<iframe>
Text content
</iframe>
为什么它不像img那样不成对标签?
答案 0 :(得分:1)
因为iframe不受支持时应显示iframe对标签之间的内容。
另一方面,IFRAME元素的内容应该只是 由不支持框架或已配置的用户代理显示 不显示帧。 (HTML 4.0 frames)
示例:
<IFRAME src="foo.html" width="400" height="500" scrolling="auto" frameborder="1">
[Your user agent does not support frames or is currently configured
not to display frames. However, you may visit
<A href="foo.html">the related document.</A>]
</IFRAME>
配对iframe的另一个好处是,浏览器只需在开发者工具中显示它的内容
答案 1 :(得分:0)
这是因为iframe
元素不是自闭元素,行为是设计的。
您还可以查看this
如果不是“非空HTML元素”,则消息会更清晰 它说“一个未定义的HTML元素 - 空”或可能是“一个 允许包含内容的HTML元素。
当然,这对于html5的现有草案来说是正确的,其中“/&gt;” 仅允许在词汇表中定义为空的元素 html命名空间。
然而,即使html5独立于sgml,我也是这样说的 因为关于NETENABL的sgml规则(与www mods)有关 “empty”元素解决了句法问题 - 是否元素 事实上的内容 - 而不是词汇问题是否 元素定义为空。
因此,还有其他标签也没有设计为具有自闭标签。您可以使用W3C's validator
进行检查