« [笑话]被解雇的为何是看门人?我的宝贝到了 »

关于XHTML标准里的target=_blank

密陀僧发布 技术 2006年7月8日 次浏览
这几天在研究网站重构和网页标准化,收获颇丰。zblog1.6版本不符合标准处甚多,提交到w3c(http://jigsaw.w3.org/css-validator/validator?uri=http://0e2.net/default.asp)校验的时候直接提示不符合xml规范。"Please, validate your XML document first!"。我自己做的一个小网页倒是通过w3c的css验证,不过XHTMl验证发现10个错误。http://jigsaw.w3.org/css-validator/validator?uri=www.jixianju.com。
这几年,标准化的观念逐渐推广开来了,新的网页标准确实有它的好处-结构清晰,样式与结构分离便于更换风格。但相对于原标准的修改,有些很是无厘头。比如这个target标签。
没有看过官方关于这个target标签在新标准里面被剔出的解释,倒是看到一些教程里面有人如此写道:target=_blank这种用法有强迫的味道。然而新开窗口就不用了吗?使用js可以同样达到新开窗口的目的-在需要的地方加一句rel=external,增加js代码

function outlinks() { 
  if (!document.getElementsByTagName) return;
  var anchors = document.getElementsByTagName("a"); 
  for (var i=0; i<anchors.length; i++) {
    var anchor = anchors[i]; 
    if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "external") 
    anchor.target = "_blank"; 
  } 
}

效果和target=_blank是完全一样的,然而这却是符合XHTML标准的。
本来一个简单的标签可以做出来的事情为什么新标准要把它弄得复杂?真的是考虑到浏览者的感受而如此规定?不然。就我个人而言,打开网页更多的喜好从新窗口打开,所以从新窗口打开一个页面这种代码需求是肯定存在的。新标准,或者也只是一个不成熟的规范。
转载请注明:转载自漱风斋[ http://0e2.net/ ]

本文链接地址:http://0e2.net/post/402.html
  • 引自 HotHeart
    老外喜欢在本窗口,和国人习惯不同,W3C认为强制打开新窗口是不尊重访问者的,这个应该由用户来决定^_^

    我也看到很多这样的解释,然而这个新标准达到了禁止强制打开新窗口的目的了吗?使用js同样可以达到从新窗口打开网页,而那是符合新标准的。
    新标准把简单的代码弄复杂,并不仅体现在这里,flash的引用同样如此。
  • 评论作者:密陀僧——2006-7-8 10:09:16 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Copyright 2009-3000 0e2.net. Some Rights Reserved.  Powered By Z-Blog.