In the process of having correct metadata in my pages, I wonder how <link>
tags are actually used (by browsers, crawlers or other tools), and whether they need to be duplicated.
In practice: if I have explicit navigation links in my page, such as this trimmed down example:
<html><body>
<a href="/page/1">Previous page</a>
<a href="/page/3">Next page</a>
</body></html>
…then which of those two versions is superior, and why?
Version 1 — using <link>
elements for metadata:
<html><head>
<link rel="prev" href="/page/1">
<link rel="next" href="/page/3">
</head><body>
<a href="/page/1">Previous page</a>
<a href="/page/3">Next page</a>
</body></html>
Version 2 — specifying rel type on links:
<html><body>
<a rel="prev" href="/page/1">Previous page</a>
<a rel="next" href="/page/3">Next page</a>
</body></html>
This is valid according to MDN,因为prev
和next
是rel
的有效值} a
元素的属性。
这些是等同的吗?是否有工具/浏览器识别一个版本但不识别另一个版本?我应该把两者都安全吗?
答案 0 :(得分:2)
从实际的角度来看,它并不重要。
在大多数浏览器中,<link>
元素不会做任何事情。有些浏览器仍然支持导航链接,但现在很少见,AFAIK只有SeaMonkey这样做。 Opera支持他们直到v12,我相信有一个适用于Mac的浏览器,iCab,但没有人听说过那个。因此,就用户界面而言,您不必这样做。
网页抓取工具可以使用<link>
来更彻底地抓取网站,但如果rel
元素中有<a>
个属性,那么这并不会产生任何影响。< / p>
就个人而言,由于我是一个沉重的SeaMonkey用户,我在我自己的网站上广泛使用<link>
,因此您可以在不需要<a>
的情况下浏览它。有关示例,请参阅this page,但我并不希望人们在自己的网站上使用相同的长度。
然而,从语义角度来看,什么是更好的问题,我担心我不确定。也许放入两者都不会受到伤害,但在两个不同的地方重复相同的信息似乎有点矫枉过正。 (DRY浮现在脑海中。)