锚元素的 URL 编码“href”属性是否必要?

Sae*_*ati 5 html url uri urlencode

我检查了我的网页的 HTML 代码,并使用Firefox 的 HTML Validator 附加组件对其进行了验证,我发现它抱怨href链接的属性,其中包含 Unicode 字符,这些字符不是 URL 编码的。

\n\n

当前的网址是:

\n\n
<a href=\'/\xd8\xa7\xd8\xae\xd8\xa8\xd8\xa7\xd8\xb1\'>Persian News</a>\n
Run Code Online (Sandbox Code Playgroud)\n\n

然而,验证者希望它是:

\n\n
<a href=\'/%D8%A7%D8%AE%D8%A8%D8%A7%D8%B1\'>Persian News</>\n
Run Code Online (Sandbox Code Playgroud)\n\n

我已经在几乎所有浏览器(甚至回到 IE6)中测试了此链接。它工作得很好。那么,这里有什么问题呢?我为什么要对其进行编码?验证器是否已过时?href如果标签属性中的 Unicode 字符未进行 URL 编码,我可能会遇到什么问题<a>

\n

hoy*_*kot 5

URL 只能使用 ASCII 字符集通过 Internet 发送。

通常,浏览器会为您进行编码。


dwa*_*orf 3

不支持该语言(编码)的浏览器将无法打开该 URL。您应该对其进行编码,以确保每个人都能够使用您网站的所有功能。