【发布时间】:2014-11-14 02:55:53
【问题描述】:
我正在处理一个网页,它将内容从 XML 转换为 HTML,然后将其显示在 HTML 模板页面上。我有一个页面,其中模板中定义的一些元素被放错了位置。我唯一能想到的是 XML 的翻译不正确。现在我的问题是,如果翻译不正确并且缺少标签(例如缺少</div> 标签),浏览器会自动插入必要的标签吗?
我只是不明白我的模板页面上的其他元素怎么会出现在错误的位置,除非浏览器正在做一些我不知道的事情......
【问题讨论】:
-
有的。有些没有。它们的内容和方式各不相同。
-
我相信大多数网络浏览器都试图优雅地失败(除非你使用 strict DTD),问题在于规范 无法定义如何呈现无效内容。
-
请注意,HTML 解析器可能会因为缺少标签以外的原因移动元素。例如,Jukka 提到的adoption agency algorithm 和foster parenting 以及reconstruction of the active formatting elements 在技术上不是一个举动,但仍然会导致元素出现在令人惊讶的地方。
标签: html