在 HTML4.01 可以使用 target=”_blank”, 但 XHTML1.0是不被允许的.
<a href="document.html" target="_blank">Open in New Window</a>
在 XHTML1.0 需要用 rel=”external” 属性.
<a href="document.html" rel="external">Open in New Window</a>
当然这是符合 XHTML 1.0 strict 标准规范, 而且你不要忘记在文件头声明文档类型:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
如果文档类型忘记了或者有的浏览器不支持(像老版本的IE), 那么就无法达到预期的目的, 不过可以通过以下 Javascript 使新标签一样可以按照老方式工作:
1 2 3 4 5 6 7 8 9 10 11 | // helloacm.com function externallinks() { 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"; } } window.onload = externallinks; |
// helloacm.com function externallinks() { 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"; } } window.onload = externallinks;
最好保存成一个文件, external.js, 然后通过以下方式调用 (最好放在 head 之间加载):
<script async type="text/javascript" src="external.js"></script>
async 指明了调用方式为异步, 这样就不会导致页面加载过慢.
英文同步: https://helloacm.com/html-hyper-link-in-new-windows-by-xhtml-1-0-standard/
GD Star Rating
loading...
本文一共 158 个汉字, 你数一下对不对.loading...
上一篇: 英国学生签证和工作时间
下一篇: 儿子在英国谢菲尔得第一天上幼儿园
扫描二维码,分享本文到微信朋友圈

以后target=”_blank”就失效了吗?
不用担心, 向下兼容, 挺多SEO不友好.
我曾经主动拒绝新建页面打开链接.