我正在通过 W3C 的验证器运行我的网站,试图让它验证为 XHTML 1.0 Strict,但我遇到了一个特别棘手的(至少在我的经验中)验证错误。我在网站中包含来自各种服务的某些徽章,这些服务提供自己的 API 和代码以包含在外部网站上。这些徽章(大部分情况下)使用 javascript 来填充您在需要子元素的标记中插入的元素。这意味着最终会生成完全有效的标记,但对于验证器来说,它所看到的只是一个不完整的父子标签,然后它会抛出一个错误。
作为一个警告,我知道我可以向他们的徽章不验证的服务投诉。没有这个,我假设有人已经验证了他们的代码,同时包含了这样的徽章,这就是我感兴趣的。诸如“向 Flickr 投诉他们的徽章”之类的答案对我没有多大帮助。
另一个警告:我希望标记尽可能保持语义。IE 添加一个空的 li 标记或 tr-td 对以使其验证将是一个不受欢迎的解决方案,即使它可能是必要的。如果这是唯一可以验证的方法,那么好吧,但请把答案倾向于语义标记。
举个例子:
<div id="twitter_div">
<h2><a href="http://twitter.com/stopsineman">@Twitter</a></h2>
<ul id="twitter_update_list">
<script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script>
<script type="text/javascript" src="http://twitter.com/statuses/user_timeline/stopsineman.json?callback=twitterCallback2&count=1"></script>
</ul>
</div>
注意包装 javascript 的 ul 标签。这最终会通过脚本用 lis 填充,但对于验证器来说,它只看到未填充的 ul。
提前致谢!