網(wǎng)頁制作絕對路徑與相對路徑的區(qū)別

1.絕對路徑
先說在本地計算機上,文件的絕對路徑當然是指:文件在硬盤上真正存在的路徑。
例如這個路徑:D:/wamp/www/img/icon.jpg告訴我們icon.jpg文件是在D盤的wamp目錄下的img子目錄中。我們不需要知道其他任何信息就可以根據(jù)絕對路徑判斷出文件的位置。
還有超鏈接文件位置,也屬于絕對路徑,例如http://www.img.net/img/icon.jpg 。
注意:有時候編好的頁面,在自己的計算機上瀏覽一切正常,但是上傳到Web服務器上瀏覽就很有可能不會顯示圖片了。因為靜態(tài)HTML頁面需要上傳到網(wǎng)站,而在網(wǎng)站的應用中,通常我們使用"/"來表示根目錄,/img/icon.jpg就表示photo.jpg文件在這個網(wǎng)站的根目錄上的img目錄里。但是要知道,這里所指的根目錄并不是你的網(wǎng)站的根目錄,而是你的網(wǎng)站所在的Web服務器的根目錄。因為上傳到Web服務器上時,可能整個網(wǎng)站并沒有放在Web服務器的D盤, 有可能是F盤或H盤。即使放在Web服務器的D盤里,Web服務器的E盤里也不一定會存在“D:/wamp/www/img”這個目錄,因此在瀏覽網(wǎng)頁時是不會顯示圖片的。這也是應用絕對路徑的風險。
2.相對路徑
相對路徑,顧名思義就是自己相對與目標位置。
假設 你要引入文件的頁面名稱為test.htm,它存在叫www的文件夾里(絕對路徑D:/wamp/www/test.htm),那么引用同時存在www文件夾里的“icon.jpg”文件(絕對路徑D:/wamp/www/icon.jpg),同一目錄下相對路徑icon.jpg;如果文件“icon.jpg”存在img文文件夾中(絕對路徑D:/wamp/www/img/icon.jpg),那么相對路徑img/icon.jpg。
相對路徑可以避免上述根目錄不同的問題。只要將網(wǎng)頁文件及引用文件的相對位置與web服務器上文件相對位置保存一致,那么他們的相對路徑也會一致。例如上面的例子,“test.htm” 文件里引用了“icon.jpg”圖片,由于“icon.jpg”圖片相對于“test.htm”來說,是在同一個目錄的,那么只要這兩個文件還是在同一個目錄內(nèi),那么無論上傳到Web服務器的哪個位置,在瀏覽器里都能正確地顯示圖片。
注意:相對路徑使用“/”字符作為目錄的分隔字符,而絕對路徑可以使用“\”或“/”字符作為目錄的分隔字符。由于“img”目錄是“www”目錄下的子目錄,因此在“img”前不用再加上“/”字符。
在 相對路徑里常使用“../”來表示上一級目錄。如果有多個上一級目錄,可以使用多個“../”。假設 “test.htm”文件所在目錄為“D:/wamp/www/test.htm”,而“icon.jpg”圖片所在目錄為“D:/wamp/www”,那 么“icon.jpg”圖片相對于“test.htm”文件來說,是在其所在目錄的上級目錄里,則引用圖片的語句應該為:
<img src="../icon.jpg" />
假設 “test.htm”文件所在目錄為“D:/wamp/www/test.htm”,而“icon.jpg”圖片所在目錄為“D:/wamp/www”,那 么“icon.jpg”圖片相對于“test.htm”文件來說,是在其所在目錄的上級目錄里的子目錄——“img”中,則引用圖片的語句應該為:
<img src="../img/icon.jpg" />
3.虛擬路徑
將文件上傳到遠程服務器后,這些文件駐留在服務器本地目錄樹中的某一個文件夾中。例如,在運行MicrosoftIIS的服務器上,主頁的路徑可能如下所示:c:\Inetpub\wwwroot\accounts\users\jsmith\index2.htm此路徑通常稱為文件的物理路徑。但是,用來打開文件的URL并不使用物理路徑。它使用服務器名稱或域名,后接虛擬路徑( 這里說一下虛擬目錄:虛擬目錄,是對Http訪問而言的,用戶在瀏覽網(wǎng)站或FPT時顯示的目錄結(jié)構(gòu)。例如你設置了E:\Website為訪問目錄,那么E:\Website為虛擬目錄的根目錄;E:\Website\Image,就變成了\Image. )。所以接上面的例子,虛擬路徑可以寫成
<img src="/img/icon.jpg" />
整理一下
“./” 代表當前目錄 <img src="./img/icon.jpg" />等同于<img src="img/icon.jpg" />
“../” 代表上一級目錄
“/” 當前根目錄,是相對目錄;<img src="/img/icon.jpg" />
“~/” Web 應用程序根目錄。ASP.NET 啟用了 Web 應用程序根目錄運算符 (~),在服務器控件中指定路徑時,可以使用該運算符。ASP.NET 會將 ~ 運算符解析為當前應用程序的根目錄??梢越Y(jié)合使用 ~ 運算符和文件夾來指定基于當前根目錄的路徑。<asp:image runat="server" id="Image1" ImageUrl="~/Images/SampleImage.jpg" />在該示例中,圖像文件將從 Web 應用程序根目錄下的 Images 文件夾中直接讀取,無論該頁面位于網(wǎng)站的什么位置。
相關(guān)文章
15 個為編程初學者準備的網(wǎng)站(都是國外的一些網(wǎng)站)
今天的文章,我們將分享15個可以學習編程的網(wǎng)站,這些網(wǎng)站上提供了很多編程教程,圖書以及編程練習,希望對你有用2024-11-02- 這篇文章主要介紹了web開發(fā)中的長度單位主要包括px,pt,em等,需要的朋友可以參考下2023-08-06
網(wǎng)頁前端開發(fā)的一些尺寸單位(px,rem單位)
px單位是絕對單位,一般用于pc端網(wǎng)頁開發(fā),因為是絕對單位所以在移動端上的使用體驗并不是很好,rem它是描述相對于當前根元素字體尺寸,是相對單位,它可以根據(jù)根元素的變換而2023-08-06WEB前端優(yōu)化必備js/css壓縮工具YUI-compressor詳解與集成用法
壓縮工具層次不窮,各有優(yōu)點,選擇適合的壓縮工具為將來做項目開發(fā)使用是一件很重要的事情??!在這介紹YUI-compressor,需要的朋友可以參考下2023-06-21- 瀏覽器是多進程的,有瀏覽器主進程,網(wǎng)絡進程,渲染進程,插件進程等,在將html,css,javascript解析成一個頁面的時候,就需要多個進程的分工合作2023-05-01
- 本文為大家整理了常用的文件對應的MIME類型,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-04-25
postman中form-data、x-www-form-urlencoded、raw、binary的區(qū)別介紹
這篇文章介紹了postman中form-data、x-www-form-urlencoded、raw、binary的區(qū)別,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-12-28網(wǎng)頁中使用Unicode字符的介紹(&#,\u等)
國際組織制定了可以容納世界上所有文字和符號的字符編碼方案,稱為Unicode,是通用字符集Universal Character Set的縮寫,用以滿足跨語言、跨平臺進行文本轉(zhuǎn)換、處理的要求2021-11-27前端實現(xiàn)字符串GBK與GB2312的編解碼(小結(jié))
這篇文章主要介紹了前端實現(xiàn)字符串GBK與GB2312的編解碼(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2020-12-02- 這篇文章主要介紹了告別硬編碼讓你的前端表格自動計算,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-27