空白“与目标=”
<a target="_new">
和<a target="_blank">
如果我只想在新的标签页/窗口中打开链接,应该使用哪一种?
使用“_blank”
根据HTML5规范:
有效的浏览上下文名称是至少有一个字符不是以U + 005F LOW LINE字符开头的任何字符串。 (以下划线开头的名字是为特殊关键字保留的。)
有效的浏览上下文名称或关键字是任何字符串,它可以是有效的浏览上下文名称,也可以是对_blank,_self,_parent或_top之一进行ASCII不区分大小写的匹配。“ - 来源
这意味着在HTML5中不存在像_new
这样的关键字,也不在HTML4中(因此也不在XHTML中)。 这意味着,如果您将此用作目标属性的值,则不会有任何一致的行为。
安全建议
正如丹尼尔和迈克尔在评论中指出的那样,当使用target _blank
指向一个不可信任的网站时,你应该另外设置rel="noopener"
。 这可以防止开放网站通过JavaScript混淆opener。 看到这个职位了解更多信息。
使用target="_blank"
将指示浏览器在用户单击链接时创建新的浏览器选项卡或窗口。
根据规范,使用target="_new"
在技术上是无效的,但据我所知,每个浏览器的行为都是相同的:
注意target="_new"
行为与target="new"
行为完全相同,而后者是有效的HTML,而前者是无效的HTML。
添加一些混淆,在HTML4中, target
属性已被弃用。 在HTML5中,这个决定被颠倒过来了,它又是规范的官方部分。 无论您使用的是何种HTML版本,所有浏览器都支持target
,但如果您的文档类型为HTML4,则某些验证程序会将该使用标记为已弃用。
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会在“framename”下面出现的,所以如果用户重新点击该超链接,它将不会打开新的选项卡,而是更新现有的选项卡。 而在_blank中,如果用户单击两次,则会打开2个新选项卡。
链接地址: http://www.djcxy.com/p/20165.html上一篇: blank" vs. target="