当人们想用“http://example.com/#foo“方法,应该使用

<h1><a name="foo"/>Foo Title</h1>

or

<h1 id="foo">Foo Title</h1>

它们都有效,但它们是相等的,还是有语义差异?


当前回答

我有一个由多个垂直堆叠的div容器组成的网页,格式相同,序列号不同。我想在每个div的顶部隐藏名称anchor,因此最经济的解决方案是将anchor作为id包含在打开的div标记中,即,

<div id="[serial number]" class="topic_wrapper">

其他回答

<h1 id="foo">Foo Title</h1>

是应该使用的。除非你想要链接,否则不要使用锚点。

ID方法在较旧的浏览器上不起作用,锚定名称方法在较新的HTML版本中将被弃用。。。我会和id一起去。

旧浏览器使用name属性,新浏览器使用id属性怎么样。将使用这两个选项,默认情况下将实现回退方法!!!

只是对标记的观察HTML早期版本中的标记表单提供了一个锚点。HTML5中使用id属性的标记表单虽然基本上是等价的,但需要一个元素来标识,几乎所有这些元素通常都包含内容。

例如,可以使用空span或div,但这种用法看起来和味道都很糟糕。

一种想法是为此使用wbr元素。wbr有一个空的内容模型,并简单地声明换行是可能的;这仍然是对标记标记的一种略微不必要的使用,但比不必要的文档分割或空文本跨度要少得多。

第二个示例为所讨论的元素分配一个唯一的ID。然后可以使用DHTML操纵或访问该元素。

另一方面,第一个方法在文档中设置一个命名位置,类似于书签。连接到一个“锚”,这是完全合理的。