<a target="_new">和<a target="_blank">之间的区别是什么?如果我只想在一个新的选项卡/窗口中打开一个链接,我应该使用哪个?
当前回答
使用“平等”
根据HTML5规范:
有效的浏览上下文名称是任何至少有一个字符不是以U+005F LOW LINE字符开头的字符串。(以下划线开头的名称仅用于特殊关键字。) 有效的浏览上下文名称或关键字是任何字符串,该字符串要么是有效的浏览上下文名称,要么是_blank、_self、_parent或_top的ASCII大小写不敏感匹配项。”——源
这意味着在HTML5中没有_new这样的关键字,在HTML4(因此XHTML)中也没有。这意味着,如果将此作为目标属性的值,将不会有一致的行为。
安全建议
正如Daniel和Michael在评论中指出的,当使用targe_blank指向一个不可信的网站时,你应该另外设置rel="noopener"。这可以防止打开站点通过JavaScript干扰打开器。更多信息请看这篇文章。
其他回答
_blank作为目标值将每次生成一个新窗口, _new只会生成一个新窗口。
而且,每个目标值为_new的点击链接都将替换之前生成窗口中加载的页面。
您可以点击这里何时使用_blank或_new来自己尝试一下。
为了在一个新的标签/窗口中打开一个链接,你将使用<a target="_blank">。
值_blank =目标浏览上下文:一个新的:选项卡或窗口取决于您的浏览设置
值_new =无效;在HTML5中,元素的target属性没有这样的值
目标属性及其所有值:video demo
Target ="_blank"在大多数浏览器中打开一个新标签。
使用“平等”
根据HTML5规范:
有效的浏览上下文名称是任何至少有一个字符不是以U+005F LOW LINE字符开头的字符串。(以下划线开头的名称仅用于特殊关键字。) 有效的浏览上下文名称或关键字是任何字符串,该字符串要么是有效的浏览上下文名称,要么是_blank、_self、_parent或_top的ASCII大小写不敏感匹配项。”——源
这意味着在HTML5中没有_new这样的关键字,在HTML4(因此XHTML)中也没有。这意味着,如果将此作为目标属性的值,将不会有一致的行为。
安全建议
正如Daniel和Michael在评论中指出的,当使用targe_blank指向一个不可信的网站时,你应该另外设置rel="noopener"。这可以防止打开站点通过JavaScript干扰打开器。更多信息请看这篇文章。
在使用iframe的页面时,使用_New非常有用。由于target="_blank"没有做到这一点,并在相同的iframe上打开页面…target new是Iframe页面的最佳解决方案。这只是我的小意思。
推荐文章
- 使伸缩项目正确浮动
- 形式内联内的形式水平在twitter bootstrap?
- 自定义元素在HTML5中有效吗?
- 如何触发自动填充在谷歌Chrome?
- 创建圈div比使用图像更容易的方法?
- 为什么Chrome浏览器不正确地确定页面是在不同的语言,并提供翻译?
- 在网页上用鼠标模拟震颤(例如帕金森病)?
- Bootstrap抛出Uncaught错误:Bootstrap的JavaScript需要jQuery
- 如何改变文本区域的边框颜色:焦点
- 我如何设置背景颜色为文本的宽度,而不是整个元素的宽度,使用CSS?
- 如何删除和清除所有的本地存储数据
- 强制打开“另存为…”弹出打开文本链接点击PDF在HTML
- 如何修改标签文本?
- 在HTML中还有其他有用的空格码吗,比如半空格的 , em-spaces, en-spaces等等?
- 输入触发器按钮单击