target =“_ blank”vs target =“_ new”

<a target="_new"><a target="_blank">如果我只想在新标签页/窗口中打开链接,应该使用哪一个?

使用“_blank”!

根据HTML5规范 :

有效的浏览上下文名称是至less有一个字符不是以U + 005F LOW LINE字符开始的任何string。 (以下划线开头的名字是为特殊关键字保留的。)

有效的浏览上下文名称或关键字是任何有效的浏览上下文名称的string,或者是_blank,_self,_parent或_top之一的ASCII不区分大小写的匹配项。

这意味着在HTML5中没有像_new这样的关键字,而在HTML4(也就是XHTML)中也没有这样的关键字。 这意味着,如果将此用作目标属性的值,将不会有任何一致的行为。

使用target="_blank"将指示浏览器在用户点击链接时创build一个新的浏览器选项卡或窗口。

使用target="_new"根据规范在技术上是无效的,但据我所知,每个浏览器的行为都是一样的:

  • 它将search带有上下文名称“_new”的选项卡或窗口
  • 如果find“_new”选项卡/窗口,则将URL加载到该窗口中
  • 如果找不到,则会使用上下文名称“_new”创build一个新的选项卡/窗口,并将URL加载到该选项卡/窗口中

注意target="_new"行为与target="new"完全相同,而后者是有效的HTML,而前者是无效的HTML。

添加一些混淆,在HTML4 target属性已被弃用。 在HTML5中,这个决定被颠倒过来了,它又是规范的官方部分。 所有的浏览器都支持target不pipe你使用的是什么版本的HTML,但是如果你的文档types是HTML4的话,一些validation器会把这个使用标记为废弃。

TL; DR
使用_blank

目标属性指定打开链接文档的位置。

 USAGE: target="xyz" [don't forget double quotes] _blank Opens the linked document in a new window or tab _self Opens the linked document in the same frame as it was clicked (this is default) _parent Opens the linked document in the parent frame _top Opens the linked document in the full body of the window framename Opens the linked document in a named frame 

因为“_new”不是任何这些IT将在“框架名称”,所以如果用户重新点击该超链接,它将不会打开一个新的选项卡,而是更新现有的选项卡。 而在_blank,如果用户点击两次然后打开2个新标签。

这可能以前被问过,但是:

“指定target =”_ new“的每个链接都会查找并按名称find该窗口,并在其中打开。

如果您使用target =“_ blank”,则每次都会在当前窗口顶部创build一个全新的窗口。

从这里: http : //thedesignspace.net/MT2archives/000316.html

这是我的理解, target = whatever将寻找具有该名称的框架/窗口。 如果没有find,它将打开一个名称为新的窗口。 如果whatever == "_new" _blank whatever == "_new" ,就会像使用_blank除了…..

使用其中一个保留的目标名称将绕过“寻找”阶段。 因此,十几个链接上的target = "_blank"会打开十几个空白窗口,但是target = whatever十几个链接上的target = whatever内容只会打开一个窗口。 target = "_new"十几个链接可能会给不定常的行为。 我没有尝试过几个浏览器,但应该只打开一个窗口。

至less这是我如何解释规则。

target="_blank"在大多数浏览器中打开一个新标签。

注意 – 记得总是包含“引号” – 至less在Chrome上, target=_blank (不包括引号)不是target="_blank" (带引号)。

后者在新标签页/窗口中打开每个链接。 前者(缺less引号)打开第一个链接,你点击一个新的标签页/窗口,然后用你点击的每个后续链接覆盖相同的标签页/窗口(也用缺less的引号命名)。

  • _blank作为目标值每次都会产生一个新的窗口,
  • _new只会产生一个新的窗口。

另外,每个用_new的目标值点击的链接将replace在先前衍生的窗口中加载的页面。

你可以点击这里什么时候使用_blank或_new自己尝试一下。

我知道这是一个老问题,使用_blank ,已经提到了几次,但是使用<a target="somesite.com" target=_blank>Link</a> 是一个安全风险

build议 ( 性能优势 )使用<a href="somesite.com" target="_blank" rel="noopener noreferrer">Link</a>

链接的目标属性强制浏览器在新的浏览器窗口中打开目标页面。 使用_blank作为目标值会每次产生一个新的窗口,而_new只会产生一个新的窗口,每一个点击目标值_new链接都会replace之前产生的窗口中加载的页面

为了在新标签页/窗口中打开链接,您将使用<a target="_blank">

_blank =有针对性的浏览上下文:一个新的:选项卡或窗口取决于您的浏览设置

价值_新=无效; 在HTML5中,对于元素上的目标属性没有这样的值

目标属性及其所有值: video演示

在使用Iframed的页面上使用_New非常有用。 由于target =“_ blank”不能实现这个function,并在相同的iframe上打开页面… target new是Iframe页面的最佳解决scheme。 只是我的五美分。