美文网首页
聊聊a标签的rel属性

聊聊a标签的rel属性

作者: imjcw | 来源:发表于2019-12-17 07:34 被阅读0次

前言

在掘金上分享了一篇文章,发现链接的地址直接是自己的分享链接,就想看看是否启用了 rel="nofllow",然而发现掘金使用了 rel="nofollow noopener noreferrer",对 rel 不是很了解的我,开始了搜索之路。

探索

看到的第一篇文章是《聊聊rel=external nofollow和rel=noopener noreferrer》,看的一知半解,初步了解了 rel 的一些属性的含义。

rel="nofllow"

它告诉搜索引擎,不要将该链接计入权重。因此大多数外部链接都可以加上 rel="nofllow"

rel="nofollow noopener noreferrer"

摘录

超链接 target="_blank" 要增加 rel="nofollow noopener noreferrer" 来堵住钓鱼安全漏洞。如果你在链接上使用 target="_blank" 属性,并且不加上 rel="noopener" 属性,那么你就让用户暴露在一个非常简单的钓鱼攻击之下。

看到 noopenernoreferrer,顿时一脸懵逼,这是什么。

这时,看到了一篇新文章《使用rel=noopener》写的很好,分析的也很透彻。我了解到,若 target="_blank" 没有和 rel="nofollow noopener noreferrer" 配合使用,目标页面会拿到当前页的 window 对象,并进行操作。

举个栗子:demoTips:栗子来源使用rel="noopener"

<!-- http://keenwon.com/demo/201603/noopener.html -->
<a href="http://keenwon.com/demo/201603/noopener2.html" target="_blank">没有rel=noopener</a>

<a href="http://keenwon.com/demo/201603/noopener2.html" target="_blank" rel="noopener">有rel=noopener</a>
<!-- http://keenwon.com/demo/201603/noopener2.html -->
<script>
    if (window.opener) {
        opener.location = 'http://baidu.com'
    } else {
        document.querySelector('h1').innerHTML = '刚才的页面是安全的,window.opener为空。';
    }
</script>

两个的区别在于:在 chrome 49+Opera 36+,打开添加了 rel="noopener" 的链接,window.opener 会为 null。在老的浏览器中,可以使用 rel="noreferrer" 禁用 HTTP 头部的 Referer 属性。

结语

细节决定成败,本以为没问题却成了一个大问题。

参考文献

  1. 聊聊rel=external nofollow和rel=noopener noreferrer
  2. 使用rel=noopener
  3. 使用rel=noopener

-- EOF --
本文转载自IMJCW
原文链接:聊聊a标签的rel属性

相关文章

  • 聊聊a标签的rel属性

    前言 在掘金上分享了一篇文章,发现链接的地址直接是自己的分享链接,就想看看是否启用了 rel="nofllow",...

  • bootstrap对话框

    a标签-title属性:提示信息的内容-rel属性:值为tooltipscript标签:包含语句$("a(rel=...

  • CSS属性

    link标签的rel属性 rel属性值: CSS的单位 字体的属性 文本属性 背景属性 列表属性 (重要)盒子模型...

  • HTML标签

    标签 1. 使用 标签注意事项 2. 标签的rel属性 2.1 rel=stylesheet -- 调用外部样式表

  • 学好“SEO” 拿百万年薪- 之基础1

    nofollow 属性 nofollow是HTML元标签(meta)的content属性和链接标签(a)的rel属...

  • HTML重难点标签

    HTML常用标签 a标签 属性 href target download rel=noopener 作用 跳转外部...

  • a 标签的 rel=noopener 属性

    可以防止 Chrome 49+,Opera 36+下新打开的页面地址操作原页面的内容

  • HTML常用标签

    一. a 标签 属性href、target、download、rel=noopener href的取值 网址 路径...

  • HTML常用标签

    a 标签的用法 属性 href target download rel=noopener href的值规定链接跳转...

  • HTML常用标签

    a 标签的用法 1. 属性 href target download rel=noopener 2. a的作用 跳...

网友评论

      本文标题:聊聊a标签的rel属性

      本文链接:https://www.haomeiwen.com/subject/jsxtnctx.html