相對路徑 與 區別

2021-07-03 13:58:01 字數 2904 閱讀 5014

一、基本概念

1、相對路徑-顧名思義,相對路徑就是相對於當前檔案的路徑。網頁中一般表示路徑使用這個方法。

2、絕對路徑-絕對路徑就是你的主頁上的檔案或目錄在硬碟上真正的路徑。絕對路徑就是你的主頁上的檔案或目錄在硬碟上真正的路徑,比如,你的perl 程式是存放在 c:/apache/cgi-bin 下的,那麼 c:/apache/cgi-bin就是cgi-bin目錄的絕對路徑

在網路中,以http開頭的鏈結都是絕對路徑,絕對路徑就是你的主頁上的檔案或目錄在硬碟上真正的路徑,絕對路徑一般在cgi程式的路徑配置中經常用到,而在製作網頁中實際很少用到。

二、相對路徑使用的特殊符號

以下為建立路徑所使用的幾個特殊符號,及其所代表的意義。

"./":代表目前所在的目錄。

以"/"開頭:代表根目錄。

根目錄下有site1和image/image.jpg,site1下有page1.html檔案和site2資料夾。site2下有page2.html和page2image.jpg檔案。

1、檔案在當前目錄

page2.html訪問page2image.jpg

2、檔案在上一層目錄

page1.html訪問image下的image.jpg

page2.html訪問image下的image.jpg

3、檔案在下一層目錄

page1.html訪問site2資料夾下的page2image.jpg

4、根目錄表示法,任何頁面訪問image下的image.jpg

三、常使用且要注意的地方

a、css中的路徑。寫css裡的路徑,url是針對樣式檔案的位置

如果: index.html引用main.css,且在main.css 引用images目錄裡的1.jpg :

background: url(../images/1.jpg)  *** 正確

background: url(images/1.jpg)    *** 錯誤

b、js中位址均相對於呼叫js的頁面的相對位置。

四、優缺點及使用的地方

1、絕對路徑的優點

a、如果有人抄襲你的**內容,裡面的鏈結還會指向你的**,有些抄襲的人比較懶,根本不會去改內容。其實也不侷限於被抄襲,如果有人將你的網頁儲存到本地電腦中,裡面的鏈結、、css、以及js仍然會連線到你的**。

b、如果網頁位置改變,裡面的鏈結還是指向正確的url。

2、絕對路徑的缺點:

a、在編碼編寫時不方便使用絕對路徑,因為鏈結應該指向真正的網域名稱而不是開發站點。

相對路徑的優缺點和絕對路徑幾乎相反。

3、相對路徑的優點:

a、容易移動內容,可以整個目錄移動。

b、測試方法比較靈活,本機測試時比較方便。

4、相對路徑的缺點:

a、部分內容頁面換了位置時,鏈結容易失效。

b、容易被人大面積採集抄襲。

五、相對路徑和絕對路徑在系統檔案中與在網路中類似,檔案的路徑符號是斜線「/」,而網路路徑卻是和它相反的反斜線「/」

六、小知識:「新建**」與「新建虛擬目錄」的差別,一些用過的iis的人都會知道新建虛擬目錄,可以用來指定乙個目錄來執行asp程式,但是如果asp/html源**裡經常出現類似這樣的**「

七、(一)、cs類中獲取絕對路徑:system.web.

(二)、在乙個工程中,根目錄下有jslib/common.js檔案。這是乙個公用js檔案,專案中每個頁面均會呼叫這個js檔案乙個方法。此方法是基於jquery的ajax訪問返回列表的乙個方法,ajax訪問的路徑是根目錄下的common/main.ashx。現在碰到的問題是如何保證這個ajax訪問的路徑在「新建**」和「虛擬目錄」中均可以訪問。

比如在根目錄下的yhmge/useradd.aspx頁面。

1、在「虛擬目錄」中檢視路徑(company為虛擬目錄名稱):

2、在「新建**」中檢視路徑:

如果要保證在「新建**」和「虛擬目錄」中均可以訪問,對於上面兩個連線,無法寫通用的方法獲取頁面基於根目錄有幾層。所以有一種思路就是使用絕對路徑,獲取common.js的根路徑便可以訪問控制代碼頁面了。我們可以在common.js檔案中獲取/jslib/common.js檔案的絕對路徑,再經此路徑去掉「/jslib/common.js」部分,再將要訪問的common/main.ashx接在這個路徑便可以。

獲取根路徑(基於jquery):

function getrootpath()

var srcbase = scriptobj.eq(0).attr("src").replace("/jslib/common.js","");;

return srcbase }

1、在「虛擬目錄」中檢視路徑(company為虛擬目錄名稱):

擷取後得出:

,再接上「common/main.ashx」,得出common/main.ashx

便可順利訪問

2、在「新建**」中檢視路徑:

擷取後得出:

,再接上「common/main.ashx」,得出 common/main.ashx

便可順利訪問

當然,這個方法的前提是js檔案的引用是絕對路徑。

絕對路徑與相對路徑的區別

絕對路徑 是從碟符開始的路徑,形如 c windows system32 cmd.exe 相對路徑 是從當前路徑開始的路徑,假如當前路徑為c windows 要描述上述路徑,只需輸入 system32 cmd.exe 實際上,嚴格的 相對路徑 寫法應為 system32 cmd.exe 其中,表示當...

路徑詳解 絕對路徑,相對路徑,根相對路徑

路徑詳解 重點 1 絕對路徑 1 什麼是絕對路徑 檔案從最高端目錄下開始的完整路徑 1 訪問網路資源 1 由以下四個部分組成 1 協議名稱 2 主機名 ip位址,網域名稱 3 目錄路徑 4 檔名 ex 1 協議名 2 主機名 網域名稱 3 目錄路徑 img4 檔名 bd logo1.png 2 訪問...

相對路徑與絕對路徑

相對路徑 以引用檔案之網頁所在位置為參考基礎,而建立出的目錄路徑。因此,當儲存於不同目錄的網頁引用同乙個檔案時,所使用的路徑將不相同,故稱之為相對。絕對路徑 以web站點根目錄為參考基礎的目錄路徑。之所以稱為絕對,意指當所有網頁引用同乙個檔案時,所使用的路徑都是一樣的。其實絕對路徑與相對路徑的不同處...