0

为了在链接页面上显示一个定义的元素,id我们插入#元素的 id。

例如:

<a href="http://www.mysite.com/test/test.php#mydiv">DIV</a>

如果我们还在GET variables链接中包含 a/some,则它们必须位于#标签之前。

这有效:

<a href="http://www.mysite.com/test/test.php?a=1#mydiv">DIV</a>

这不会:

<a href="http://www.mysite.com/test/test.php#mydiv?r=1">DIV</a>

原因在哪里?

4

2 回答 2

1

参见STD 66,URI 标准。

3.5. 片段

片段标识符组件由数字符号 ("#") 字符的存在指示,并以 URI 的结尾终止

[…]

允许使用斜杠 ("/") 和问号 ("?") 字符来表示片段标识符内的数据。

因此,一旦#在路径中找到 a,片段就会开始。之后的一切都是片段的一部分。因此,您的最后一个示例具有以下片段:mydiv?r=1.

于 2013-08-06T12:57:52.683 回答
0

url 标准要求锚点必须在最后一个位置

标准是

<protocol>://<host>:<port>/<path>?<query>#<anchor>

许多部分是可选的,但必须保持顺序。

于 2013-08-05T01:33:42.347 回答