經常聽到網友苦述自己的網頁中有許多圖片不能正常顯示,究竟為什麼不能正常顯示呢?總結其原因絕大部分都是因為使用了錯誤路徑所致。網頁中的圖像、動畫等素材都有自己固定的存放位置,網頁只是通過路徑使用HTML語言來調用它們,然後把它們顯示在網頁中。在網頁中的路徑大體可分為相對路徑和絕對路徑,大家(尤其是初學網頁設計的朋友)往往對它們不夠認識,在應該使用相對路徑的地方使用了絕對路徑,從而導致瀏覽器無法在指定的位置打開指定的文件,使素材不能正常顯示。0 o3 R! D; _% S
! |7 I+ ]: Q$ F* [+ I5 \; r' I 那什麼是相對路徑?什麼是絕對路徑呢?為什麼使用了絕對路徑有時就不能顯示呢?讓我們一起來認識一下它們吧。; ~5 z8 t2 U- Y; v* R( c0 G* r( L
. W( w0 B4 N7 u/ R! h2 r
比如C盤的My Pictures目錄下有一個tp.jpg圖像,那麼它的路徑就是c:\My pictures\tp.jpg,其實這種完整地描述文件位置的路徑就是絕對路徑。如網頁index.htm中有一張圖片tp.jpg,它們的絕對路徑是:
1 {7 Q5 w" q* f8 C+ u
, V8 f( E- _- G# |' L c:\My pictures\index.htm
/ m9 U6 {+ Q f$ l* V9 T8 K: I' e) X4 G! B, U# b7 N
c:\My pictures\tp.jpg4 s- L9 a z. T r
- [' z$ F) U* \ u4 m' Z 如果你使用了絕對路徑c:\My pictures\tp.jpg進行圖片鏈接,那麼在本地電腦中將一切正常,因為在c:\My pictures下的確存在tp.jpg這個圖片。但你將它們上傳到網站服務器上後,就不會正常了,因為服務器給你劃分的存放空間可能在C盤其他目錄中,也可能在D盤其他目錄中,總之不會那麼巧的就是c:\My pictures。那麼圖片路徑應該如何設置呢?這裡就必須使用相對路徑了,所謂相對路徑,顧名思義就是自己相對與目標位置。在上例中index.htm中連接的tp.jpg就可以使用My pictures\tp.jpg來定位文件,這樣不論將這些文件放到哪裡,只要它們的相對關係沒有變,就不會出錯。具體的鏈接方式是這樣的:「..\My pictures\img.jpg」,其中使用「..\」來表示上一級目錄,「..\..\」表示上上級的目錄,以此類推。
. p* Z/ Z0 z! m+ M8 j. |9 e$ I) H" z$ @: L; u
我們一起來看看初學的朋友可能犯的幾個路徑錯誤:) H1 p9 O, g& G' d0 u
. E- g6 _) W$ w. R
例1/ x" I6 h1 o u& o2 C
$ b/ E# s' S- v. ^ c:\mywed\wed\index.htm/ m' U( R" @" X3 |! z# s; s
# h5 m" u* k; W8 J
c:\mywed\img\tp.jpg
3 R- g, h: B5 K `/ B/ q* ~' Y
5 Y3 B: B7 C+ ^1 C) Y 在此例中,index.htm網頁中有tp.jpg這個圖片,因為兩個文件同在Mywed目錄下,所以初學者可能把圖片鏈接寫為img\tp.jpg,那麼這樣實際的鏈接就變為了C:\mywed\wed\img\tp.jpg,顯然這是不正確的。正確的路徑應該是相對路徑..\img\tp.jpg。
* K2 h, r5 i5 c$ C% M r7 N3 c5 f: j
例2
* d& r) [( ?' T
2 P' E& p* v7 `4 }* Z) z% C4 y; m c:\mywed\wed\wed1\index.htm
/ W, o: c4 ?3 l, L# l M0 R1 b. ]1 x
c:\mywed\img\img1\tp.jpg) ]9 l: c: ]# Z& t+ {3 B
5 y2 t1 Q/ A( c" z/ d
在此例中,index.htm網頁中有tp.jpg這個圖片,初學者可能錯誤的把圖片鏈接寫為..\img\img1\tp.jpg,那麼這樣轉為絕對路徑就是C:\mywed\wed\img\img1\tp.jpg了,因為在該目錄下並沒有此文件,所以顯然這種鏈接是錯誤的。正確的應該是..\..\img\img1\tp.jpg。
: _& O- @1 W- t' m; u4 t. S3 c. Z& p. P
例3
, [( O" y) g! ]4 n) ~6 m1 X
9 C$ s3 S; L& k2 y" G L& Q3 T c:\mywed\wed\wed\index.htm% ~- a& f2 Y5 I! }
5 [1 U% }/ m# X, H
c:\mywed\wed\img\tp.jpg/ M2 J- R3 q d7 P7 X5 c3 K* W
" M& f, n+ h4 `/ {& k4 j- l 在此例中,index.htm網頁中有tp.jpg這個圖片,初學者可能錯誤地把圖片鏈接寫為..\..\img\tp.jpg,那麼這樣轉為絕對路徑就是C:\mywed\img\tp.jpg了,因為在該目錄下並沒有此文件,所以顯然這種鏈接是錯誤的。正確的應該是..\img\tp.jpg。: E: ^- J9 J7 d! D& `2 h. Y
5 n$ r8 z; n1 d* N
通過上面三個例子,我們可以看到網頁與圖片所在目錄相同的部分都可以使用「..」進行代替。% S4 h2 H9 D2 t- b, z2 o1 h
) H" m; S* A9 C/ D0 l7 d
有的讀者可能會有這樣的疑惑:一個網站有許多的鏈接,我怎麼能保證它們的連接都正確,如果我調整了一下圖片或網頁的存儲路徑,那不是全亂了麼?為了提高工作效率,我們推薦大家使用Dreamweaver進行網站編輯,因為它有個站點管理功能,使用該功能絕對路徑可以自動地轉化為相對路徑,並且當你在站點中改動文件路徑時,與這些文件關聯的連接路徑都會自動更改,實在是方便極了! |
|