最近在項目中遇到了一個小問題,糾結了半天。
路徑中使用斜槓/和反斜槓\的區別到底是什麼。查閱了一些資料後可知。
Unix使用斜杆/ 作爲路徑分隔符,而web應用最新使用在Unix系統上面,所以目前所有的網絡地址都採用 斜杆/ 作爲分隔符。
Windows由於使用 斜杆/ 作爲DOS命令提示符的參數標誌了,爲了不混淆,所以採用 反斜槓\ 作爲路徑分隔符。所以目前windows系統上的文件瀏覽器都是用 反斜槓\ 作爲路徑分隔符。隨着發展,DOS系統已經被淘汰了,命令提示符也用的很少,斜杆和反斜槓在大多數情況下可以互換,沒有影響。
知道這個背景後,可以總結一下結論:
(1)瀏覽器地址欄網址使用 斜杆/ ;
(2)windows文件瀏覽器上使用 反斜槓\ ;
(3)出現在html url() 屬性中的路徑,指定的路徑是網絡路徑,所以必須用 斜杆/ ;
<div style="background-image:url(/Image/Control/title.jpg); background-repeat:repeat-x; padding:10px 10px 10px 10px"></div>
// 如果url後面用反斜槓,就不會顯示任何背景
(4)出現在普通字符串中的路徑,如果代表的是windows文件路徑,則使用 斜杆/ 和 反斜槓\ 是一樣的;如果代表的是網絡文件路徑,則必須使用 斜杆/ ;
<img src=".\Image/Control/ding.jpg" /> // 本地文件路徑,/ 和 \ 是等效的
<img src="./Image\Control\cai.jpg" />
<img src="http://hiphotos.baidu.com/yuhua522/pic/item/01a949c67e1023549c163df2.jpg" /> // 網絡文件路徑,一定要使用 斜杆/
斜杆/ 和 反斜槓\ 的區別基本上就是這些了,下面再討論一下相對路徑和絕對路徑。
./SRC/ 這樣寫表示,當前目錄中的SRC文件夾;
../SRC/ 這樣寫表示,當前目錄的上一層目錄中SRC文件夾;
/SRC/ 這樣寫表示,項目根目錄(可以只磁盤根目錄,也可以指項目根目錄,具體根據實際情況而定)