我的网站是 XHTML Transitional 兼容的,除了一件事:URL 中的 &(和号)按原样编写,而不是&
也就是说,我页面中的所有网址通常都是这样的:
<a href="http://www.example.org/page.aspx?x=1&y=2">Foo</a>
但是XHTML 验证器会产生这个错误:
无法为一般实体“y”生成系统标识符
...它希望 URL 写成这样:
<a href="http://www.example.org/page.aspx?x=1&y=2">Foo</a>
问题是 Internet Explorer 和 Firefox 不能正确处理 URL 并忽略 y 参数。如何使此链接正常工作并正确验证?
在我看来,如果浏览器不能使用严格编码的 XHTML URL,就不可能编写 XHTML 页面。
你想看到实际行动吗?查看这两个链接之间的区别(按原样复制并粘贴它们):
http://stackoverflow.com/search?q=ff&sort=newest
和
http://stackoverflow.com/search?q=ff&sort=newest