<a>标签rel属性详解
<a>标签rel有哪些取值?
<a>标签有如下取值:
- nofollow
- external
- noopener
- noreferrer
SEO相关:nofollow和external 浏览器安全相关:noopener和noreferrer
rel值的含义和作用
nofollow
nofollow用于告知搜索引擎,当前链接不需要追踪,其内容是没有价值的,不传递权重。
SEO的作用
调整网页链接的权重,集中站点权重
添加nofollow后,爬虫不会追踪有此标记的链接。并且,不会传递当前站点的权重到新的链接,避免被分散。 可以把权重引导到更重要的页面,有利于提升网站的排名。
反垃圾链接
网站通常有留言功能,一些人会利用这个功能,在评论的时候,留下自己站点的链接。加上nofollow进行屏蔽后,可以防止当前站点的权重流失。
节约蜘蛛资源
每个站点,搜索引擎每天派出的爬虫数是一定的。尽量把爬虫引导到有用的链接上,有利于重要页面的收录。
加了nofollow的链接页面会不会被收录?
链接页面还是会被收录和索引,只是没有分配该页面权重。因为爬虫还是可以通过站点地图、内链、外链等方式,访问到链接页面。
与robots的区别
robots是搜索引擎协议文件,nofollow是HTML标签的一个属性值。 robots主要用于屏蔽动态链接,让搜索引擎不爬取动态链接的内容。 nofollow让搜索引擎不要跟踪标记了该属性的链接,使其不传递权重。
external
rel="external"和target="_blank"的作用一样,都是在新窗口中打开当前链接。 如果网点采用严格的DOCTYPE声明,则target="_blank"会失效。而rel="external"仍可以正常工作。
SEO的作用
告知搜索引擎,当前链接是外部链接。
noopener
noopener用于浏览器安全防护,防止钓鱼攻击。 当链接使用target="_blank"打开新页面时,新页面可以使用以下语句控制父页面:
if (window.opener) {
window.opener.location="https://wangxiaokai.vip?referrer="+document.referrer;
}链接加上rel="noopener"后,则新页面被限制访问window.opener。
noreferrer
与noopener类似,设置了rel="noreferrer"后,链接的新页面被限制访问window.opener。同时,新页面无法获取document.referrer信息,该信息包含了来源页面的地址。 因为一些旧的浏览器不支持noopener,所以为也兼容,会同时设置两个属性值rel="noopener noreferrer"。
参考
- nofollow是什么意思及nofollow作用
- 聊聊rel=external nofollow和rel=noopener noreferrer
noopener,noreferrer及nofollow的用法
最近笔者在整理第一本电子书书稿《前端面试手册》,有兴趣的同学可以关注下~
喜欢我文章的朋友,可以通过以下方式关注我:
- 「star」 或 「watch」 我的GitHub blog
- RSS订阅我的个人博客:王先生的基地

转载自:https://segmentfault.com/a/1190000041853287