已弃用的“目标”属性的任何正式替代方案?

时间:2014-07-17 01:32:22

标签: javascript php html css

我正在审查处理链接的技巧,我偶然发现了一篇文章,其中说明了"目标"链接的属性不再受支持,不仅仅是链接,还包括使用" target"的表单和任何其他标记。属性。

所以我寻找一个简单的替代方案一直是徒劳的,因为提出的解决方案并不像看起来那么容易,其他人甚至需要某种javascript或php,比如说,加上它只是一个单词在CSS中大声喊叫。

现在我的问题是,有一些简单,我的意思是这个问题的一个非常容易的替代方案,它必须纯粹基于CSS或基于HTML,所需的努力不超过它最初创建的它

PS:我还是初学者,所以原谅我缺乏发展能力。

2 个答案:

答案 0 :(得分:4)

万维网联盟将target列为表单和锚标记的允许属性,它们是网络的国际标准组织:

http://w3.org/TR/html-markup/form.html#form

答案 1 :(得分:1)

不推荐使用target属性。在任何浏览器中都没有删除对它的支持。

在HTML 4.01中,Strict版本中不允许它(因此在针对HTML 4.01 Strict的验证中导致错误消息),但它未声明为已弃用。这是不一致的。另一方面,这样的弃用只是意见的表达,不会影响,也不会影响浏览器的行为方式。

如果您需要遵守HTML 4.01 Strict(例如,由于公司规则或合同条款),则您无法使用target属性。那么正式符合要求的方法是使用JavaScript代替;例如,代替链接中的target=_blank,您可以使用window.open(...)在新窗口中打开目标,然后取消正常的链接处理。另一种方式(某些人可能会更多地称作弊)是使用像onclick="this.target='_blank'"这样的属性。

类似的考虑适用于XHTML 1.0。

HTML5没有“严格”版本,它包含target属性作为普通属性。

仅当您需要遵守某些特定的HTML版本时,HTML版本差异才有意义。在浏览器中,target可以独立于doctype字符串和类似的东西工作。 (但是,它与原始设计的工作方式不同。最初,'target = _blank`被定义为在新的窗口中打开一个链接。在现代浏览器中,它通常会以新的方式打开链接标签。)