将id属性放在“a”标记或“h1 / h2”标记中会更好吗?

时间:2014-03-30 21:28:21

标签: html tags

我正在w3学校网站上学习HTML,而我正处于“html链接”一章。我不明白的是他们建议在链接标记中使用id属性而不是标题标记。

他们的例子:

<p> 
<a href="#C4">See also Chapter 4.</a>
</p>

<h2><a id="C4">Chapter 4</a></h2> 
<p>This chapter explains ba bla bla</p>

我的尝试:

<p>
<a href="#C4">See also Chapter 4.</a>
</p>

<h2 id="C4">Chapter 4</h2>
<p>This chapter explains ba bla bla</p>

当我尝试它们时,两者的工作方式相同,但我的尝试减少了写作。我的尝试中有什么不对的,我不明白。

4 个答案:

答案 0 :(得分:4)

通常情况下,您可以通过其ID标记链接到元素的链接,而不是通常通过其a属性添加name标记。这可能是因为前者是后来的介绍,因此a标签方法曾经是内部联系的唯一方法。

是的,你的方法完全有效。

W3SChools,顺便说一句,虽然有时无疑是有用的,但多年来一些内容已经受到抨击。不要将它视为福音 - 它与W3C无关,它只是某人试图教授网络开发。

最后,不要将head * er *标签与head * ing *标签混淆;在你的情况下它的标题,而不是标题。那是different tag entirely

答案 1 :(得分:3)

在通过id链接到任何元素之前,您可以通过<a>链接到name元素。

过渡期在主播上使用了idname。没有必要担心,除非你的目标是Netscape 4(我可能会记错,这可能是第一个支持id链接的浏览器而不是最后一个浏览器,但无论如何,它&# 39;古代历史)。

W3Schools里面有很多遗留垃圾(最好避免作为学习资源)。

使用标题(或容器(id可能?)上的<section>标题和相关内容在里面。)

答案 2 :(得分:2)

W3Schools远非权威资源(有关详情,请参阅http://www.w3fools.com/)。

在标题标记上定义id非常好,事实上the w3 documentation for HTML4.01 确实如此。

答案 3 :(得分:2)

这里的其他答案很好地解释了实际答案,但由于原始(差)推荐来自W3Schools教程,我想向您指出一些更有信誉的资源:

首先,有MDN, the Mozilla Developer Network。虽然由Firefox的制造商运营,但它可以很好地覆盖事物标准化的地方,以及不同浏览器对它们的支持程度。对于技术参考而言,它往往比教程更好,我找不到任何直接相关的内容,但是the page documenting the <a> elementname属性中包含了这个注释:

  

使用说明:此属性在HTML5中已过时,请改为使用全局属性ID。

我提到MDN主要是因为它是一个非常成熟的参考站点,并且是W3Schools内容的一个很好的替代品。

其次,有WebPlatform.org与W3Schools不同,它与W3C和主要浏览器的开发者有关,并且旨在包括准确和最新的参考和教程信息,尽管其中一些仍在进行中。

他们有an HTML link tutorial directly answers your question

  

您还可以在<a>元素上添加id属性,使其成为页面锚点。   
[...]
  但是这些天你想要支持的大多数浏览器允许你为此编写一个快捷方式,并将ID直接放在你想要链接到的元素上   
[...]
  这更简单,所以我们建议您坚持这一点。