如何链接到页面的一部分?(哈希?)

Har*_*ldo 183 html xhtml

如何链接(与<a>),以便浏览器转到目标页面上的某个子标题而不是顶部?

Dan*_*olo 251

如果有<a name="foo">标签或任何带有id(例如<div id="foo">)的标签,则只需附加#foo到URL即可.否则,您不能随意链接到页面的某些部分.

这是一个完整的例子: <a href="http://example.com/page.html#foo">Jump to #foo on page.html</a>

链接同一页面上的内容示例: <a href="#foo">Jump to #foo on same page</a>

  • *只需注意:*在HTML5中,不再有`<a>` -elements的`name`属性:[a元素的name属性已过时.考虑将id属性放在最近的容器上.](http://w3c.github.io/html-reference/a.html#a-constraints) (55认同)
  • 如果我们有一个带有 url 的宁静页面:`domain.com/#home?page=1` 如何在 href 中使用 id? (2认同)

Mic*_*yan 38

您使用锚点和哈希.例如:

链接的目标:

 <a name="name_of_target">Content</a>
Run Code Online (Sandbox Code Playgroud)

链接到目标:

 <a href="#name_of_target">Link Text</a>
Run Code Online (Sandbox Code Playgroud)

或者,如果从不同的页面链接:

 <a href="http://path/to/page/#name_of_target">Link Text</a>
Run Code Online (Sandbox Code Playgroud)

  • 更加明亮的人也会跳转到id为'name_of_target`的任何元素.您不需要使用`<a>`标记作为目标.所以另一个目标可能是`<h3 id ='name_of_target'> Content </ h3>`. (7认同)
  • 请注意,这在HTML5中已经过时了. (7认同)
  • 只是为了澄清 Tim 的评论,片段链接和空“a”标签在 HTML5 中仍然存在。不推荐使用“name”标签,取而代之的是“id”。https://html.spec.whatwg.org/multipage/browsing-the-web.html#navigate (7认同)

Fel*_*ing 29

只需将带有元素ID的哈希附加到URL即可.例如

<div id="about"></div>
Run Code Online (Sandbox Code Playgroud)

http://mysite.com/#about
Run Code Online (Sandbox Code Playgroud)

所以链接看起来像:

<a href="http://mysite.com/#about">About</a>
Run Code Online (Sandbox Code Playgroud)

要不就

<a href="#about">About</a>
Run Code Online (Sandbox Code Playgroud)


Abd*_*UTI 20

2020 年 3 月 12 日,WICG 为文本片段添加了一个草稿,现在您可以通过将以下内容添加到哈希中来链接到页面上的文本,就像您在搜索它一样

#:~:text=<Text To Link to>

工作示例Chrome Version 81.0.4044.138

单击此链接应重新加载页面并突出显示链接的文本


Sar*_*raz 18

方法如下:

<a href="#go_middle">Go Middle</a>

<div id="go_middle">Hello There</div>
Run Code Online (Sandbox Code Playgroud)

  • 你什么?在打开`<div ...>`之后你已经关闭了`</a>` - 不确定你在这里尝试做什么. (2认同)

Dan*_*llo 10

您有两种选择:

您可以在文档中放置锚点,如下所示:

<a name="ref"></a>
Run Code Online (Sandbox Code Playgroud)

或者你给任何HTML元素一个id:

<h1 id="ref">Heading</h1>
Run Code Online (Sandbox Code Playgroud)

然后只需将哈希值附加#ref到链接的URL即可跳转到所需的引用.例:

<a href="document.html#ref">Jump to ref in document.html</a>
Run Code Online (Sandbox Code Playgroud)