鏈接的rel與target詳解
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
關(guān)于target="_blank"去留的問(wèn)題在網(wǎng)上已經(jīng)被反復(fù)爭(zhēng)議很多次了。有的說(shuō)要留,有的說(shuō)要去掉。主張留的一方主要是考慮到target="_blank"的屬性目前來(lái)講還沒(méi)有一個(gè)好的方式來(lái)解決,而主張去的一方則拿出了rel與JS的解決方案。target="_blank"是否的存在是否有必要我想目前還有很多正處在一種盲區(qū)。我查閱了相關(guān)的文獻(xiàn),發(fā)現(xiàn)其實(shí)情況并非是我們所想的那樣,事實(shí)上target="_blank"并非是不符合標(biāo)準(zhǔn)的,而用rel與JS的解決方案也是沒(méi)有必要的,因?yàn)檫@是個(gè)誤區(qū),只要我們了解了rel與target的真正含義我們就清楚了其實(shí)這里本不應(yīng)存在爭(zhēng)議。下面我將我通過(guò)查閱文獻(xiàn)所得到的知識(shí)與大家分享,我們先來(lái)了解一下target與rel的含義:
target ,允許指定在什么位置顯示已經(jīng)選擇的超鏈接內(nèi)容。也就是說(shuō)鏈接的內(nèi)容將在什么樣的窗口被顯示。target 的屬性值有四個(gè)保留的名稱,分別是:_blank,_self,_parent,_top。其中_blank的意思是瀏覽器總在一個(gè)新打開(kāi)的、未命名的窗口中載入target="_blank"鏈接的文檔。這里大家也許會(huì)很不理解“未命名”是什么意思。事實(shí)上target 是可以給新打開(kāi)的窗口賦一個(gè)ID,例如:target="name" 這就表明通過(guò)target="name"鏈接載入的文檔將會(huì)在一個(gè)叫"name"的窗口顯示。如果沒(méi)有ID為"name"的窗口,那么瀏覽器就會(huì)新建一個(gè)名為"name"的窗口來(lái)顯示鏈接文檔。如果當(dāng)前窗口的ID就是"name"那么這個(gè)鏈接文檔就會(huì)在當(dāng)前的窗口中替換原有的內(nèi)容顯示出來(lái)。而_self的意思其實(shí)就是當(dāng)前文檔,<a>的默認(rèn)目標(biāo)就是_self,這個(gè)屬性值一般來(lái)說(shuō)是用不到的。_parent是使鏈接文檔在父級(jí)窗口顯示,這個(gè)屬性值只在框架結(jié)構(gòu)中使用,如果身本就是頂級(jí)框架,那么其作用與_self相同。_top同樣是應(yīng)用在框架中的,但是他的效果是清除框架來(lái)顯示目標(biāo)文檔。這對(duì)于從框架結(jié)構(gòu)轉(zhuǎn)向無(wú)框架結(jié)構(gòu)是很有作用的。 現(xiàn)在我們知道了,target 是一目標(biāo)顯示的屬性與瀏覽器密切相關(guān)的。那么rel又是什么呢, 為什么很多人把他當(dāng)作是target 的替代屬性呢?下面我們就來(lái)認(rèn)識(shí)一下rel。其實(shí)不只有一個(gè)rel還有一個(gè)與之對(duì)應(yīng)的屬性叫rev,這兩個(gè)屬性的意思分別是:從源文檔到目標(biāo)文檔的關(guān)系;從目標(biāo)文檔到源文檔的關(guān)系。這里的源文檔可以理解為鏈接所處在的當(dāng)前文檔,而目標(biāo)文檔也就是這個(gè)鏈接將要打開(kāi)的文檔。這下我們應(yīng)該清楚了,其實(shí)rel與rev是一種文檔之前的鏈接關(guān)系,而并非是與瀏覽器相關(guān)的如何顯示目標(biāo)文檔的屬性。 那么rel與rev有哪些關(guān)系呢?下面將一一列取并解釋其中的含義: next,鏈接到下一個(gè)文檔; prev,鏈接到前一個(gè)文檔; head,鏈接到集合中的頂級(jí)文檔; toc,鏈接到集合的目錄; parent,鏈接到源上面的文檔; Child,鏈接到源下面的文檔; index,鏈接到此文檔的索引; glossary,鏈接到此文檔的術(shù)語(yǔ)表; 其中next與prev是一組。表明了當(dāng)前文檔與目標(biāo)文檔之前的關(guān)系是同級(jí)的關(guān)系,可以寫(xiě)成這樣<a href="movie_002.htm" rel=next rev=prev>。head與toc可以形成一個(gè)組合,表示者是由目錄鏈接到最終的文檔,或是由文檔鏈接到目錄。parent與child是一組,表示著由當(dāng)前的文檔鏈接到父級(jí)文檔或是子級(jí)文檔。而index與glossary可以與head分別組合,形成由文檔到索引,或是由索引到文檔;文檔到術(shù)語(yǔ)表或是術(shù)語(yǔ)表到文檔。 也許這樣講可能還是不很清楚,下面舉個(gè)例子:我這里整理了一個(gè)電影文檔資源,那么我需要對(duì)這些資源進(jìn)行分類(lèi),我把電影分成:武俠片、戰(zhàn)爭(zhēng)片、愛(ài)情片、恐怖片、紀(jì)錄片。那么我在電影根目錄需要鏈接到下面的子類(lèi)的時(shí)候那么鏈接的關(guān)系應(yīng)該是:rel=child rev=parent ,而如果當(dāng)前是武俠片的頻道頁(yè),我需要轉(zhuǎn)愛(ài)情片頻道或是其它頻道時(shí),那么鏈接關(guān)系就應(yīng)該是:rel=next rev=prev,當(dāng)我們由一個(gè)武俠片鏈接到“臥虎藏龍”這部電影的文檔時(shí)鏈接的關(guān)系應(yīng)該是:rel=head rev=toc,當(dāng)由“臥虎藏龍”鏈接到索引的時(shí)候鏈接關(guān)系又變成了:rel=index rev=head。 由于目前的CSS還不能抓取rel與rev的屬性值,所以沒(méi)有辦法給不同關(guān)系的鏈接提供不同的樣式,所以現(xiàn)在rel與rev只是用來(lái)使得網(wǎng)頁(yè)的語(yǔ)義性更為完善。 該文章在 2010/8/13 18:27:49 編輯過(guò) |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |