2014-02-21 226 views
1

我一直在使用類似這樣的東西,<a href="myURL.php" target="blank">Some text</a>,已經有近3年的時間了,我想確保我沒有做出非常非法的事情。錨標記的目標屬性的正確方法是什麼?

查找了一些信息後,我開始注意到所有地方都表示它爲target="_blank"。這開始引起了我的一些擔心,我可能需要重新瀏覽所有我曾工作過的網站,並對其進行更改,以包括_

當我通過validator運行它時,它不會導致錯誤,甚至不會通知我有關它的警告。

我的問題:

  1. 這是對guidlines不使用,_,下劃線?

  2. 如果這違反準則,爲什麼它不會導致 錯誤,爲什麼它的工作?

作爲便箋,我找不到這方面的信息,但我至少找到了specs for links

+1

您是否閱讀過文檔? HTTPS://developer.mozilla。org/en-US/docs/Web/HTML/Element/a#attr-target – SLaks

+1

「target」屬性值的規範在這裏:http://www.w3.org/html/wg/drafts/html/master /browsers.html#valid-browsing-context-name-or-keyword –

回答

1

嚴格來說,你在做什麼(不使用下劃線)是不正確的。

如果您選擇僅使用target="blank",那麼您的鏈接仍然可以正常打開,但有一點細微差別:單擊該鏈接將重新使用上次打開的窗口而不是打開新鏈接。

這是因爲target屬性包含鏈接應該打開的框架的名稱。如果名稱爲「空白」的框架(如您聲明的)不存在,則會打開一個新窗口並用這個名字指定它。因此,只要點擊頁面中另一個包含target =「blank」的鏈接,它就是上一次打開的窗口(假設它仍然打開)會改變。

基本上,您不需要回頭瀏覽舊網站,改變您所做的一切,但是您應該考慮更改爲target="_blank",前提是您打算每次打開新標籤頁或窗口時間。

+0

這是一個很好的解釋!我只是有點困惑,但這真的爲我解決了! –

+1

很高興能有幫助! – johnkavanagh

2

target屬性可以是框架的名稱(可以是任何內容),也可以是以_開頭的三個特殊名稱之一。

7

_blank的意思是「打開一個未命名的新窗口」

blank意味着如果你用target="blank"第二點擊鏈接然後它會打開「使用命名爲‘空白’窗口/標籤/幀」

在與第一個target="blank"鏈接相同的窗口中。

+0

啊,這使得更多的意義!因此,如果我只使用「空白」或任何我想使用它,將在指定「空白」時在該** **相同​​的**選項卡中打開。 –

2

target="blank"表示在名爲「空白」的窗口中打開。如果名爲「空白」的窗口已經存在,它將在該窗口中打開網站。可能是文檔中的一個框架。

target="_blank"表示在新窗口中打開。

相關問題