例如,在下面的HTML ...如何找出浏览器选择忽略的无效HTML?
<form name="outerform">
<input type="text" name="outer1"/>
<input type="text" name="outer2"/>
<div>
<form name="innerform" method="post" action="#">
<input type="text" name="inner1"/>
</form>
</div>
</form>
Firefox会简单地扔掉innerform<form>
标签,因为形式不能嵌套。
我在修补一些遗留代码时遇到了这个问题。有人放置了几乎覆盖整个body
内容的<form>
标签。当我添加了我自己的,更加本地化的<form>
时,Firefox删除了内部标记,并且我的提交将转到外部表单。因为我正在做一些jQuery处理来创建我的提交网址,所以我认为这是我的错误。在Firebug的HTML选项卡中查看呈现的HTML后,我意识到了这个问题。
如果浏览器或Firebug有一个“被忽略的HTML”标签,或者一些这样的方法,我会立即挑选出来。我不能简单地做一个查看源代码,并将其粘贴到W3C的基于Web的验证服务,原因如下:
- 出于安全考虑,在开发计算机我在没有连接到公共互联网。
- Firebug的HTML选项卡显示呈现的HTML,因此无效的HTML标记已被删除。
最后,编辑器(Eclipse)通常是我找到像这样的错误的地方。但是我们使用了很多包含的文件和Tiles框架,因此您一次只能看到最终HTML页面的一个片段。
Firefox的view-source不显示呈现的HTML;如果我把你的测试用例这样的东西显示'
谢谢,我纠正了这个问题。我的意思是Firebug的HTML选项卡,而不是视图源。 – 2012-01-05 14:38:35