我使用的应用程序有一个 PL/SQL 包,它创建页面并使用函数创建 META 标记。
它创建一个带有 META 标记的网页,如下所示:
<META HTTP-EQUIV="Refresh" NAME="Refresh" CONTENT="1; URL=PaymentSubmit.html">
问题是 Chrome 不喜欢 NAME="Refresh" 属性。它不会重定向页面,尽管它在 IE 和 Firefox 中可以正确重定向
如果我删除 NAME 属性,那么它看起来像这样,它适用于所有浏览器:
<META HTTP-EQUIV="Refresh" CONTENT="1; URL=PaymentSubmit.html">
这里发生了什么?我找不到 META 重定向的 W3C 标准,那么每个浏览器是否都制定了自己的规则?我不确定它是否在 Chrome 中工作过,但由于我从未听说过任何错误报告,所以我认为它曾经在 Chrome 中工作。
有人有类似的问题吗?
Thanks
如果你检查W3C 维基 http://www.w3.org/wiki/HTML/Elements/meta你可以找到以下引用:
必须指定名称、http-equiv 和字符集属性之一。
这意味着这两者都不是有效的 html -name
and http-equiv
属性已设置。
Read W3C 的 HTML 和 XHTML 技术对元刷新的测试 http://www.w3.org/TR/WCAG20-TECHS/H76#H76-tests:
查找文档中的所有元元素。对于每个元元素,检查
如果它包含属性 http-equiv 且值为“refresh”
(不区分大小写)和数字更大的内容属性
比 0 后跟 ;'URL=anyURL' (其中 anyURL 代表 URI
应替换当前页面)。
其他浏览器的行为并没有错,但 chrome 更严格。
更多细节有关正确行为和有效参考的信息,请访问http://www.w3.org/TR/html5/document-metadata.html#attr-meta-http-equiv-refresh http://www.w3.org/TR/html5/document-metadata.html#attr-meta-http-equiv-refresh
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)