URL中斜杠/和反斜杠\的区别小结
最近在项目中遇到了一个小问题,纠结了半天。
路径中使用斜杠/和反斜杠\的区别到底是什么。查阅了一些资料后可知。
Unix使用斜杆/作为路径分隔符,而web应用最新使用在Unix系统上面,所以目前所有的网络地址都采用斜杆/作为分隔符。
Windows由于使用斜杆/作为DOS命令提示符的参数标志了,为了不混淆,所以采用反斜杠\作为路径分隔符。所以目前windows系统上的文件浏览器都是用反斜杠\作为路径分隔符。随着发展,DOS系统已经被淘汰了,命令提示符也用的很少,斜杆和反斜杠在大多数情况下可以互换,没有影响。
知道这个背景后,可以总结一下结论:
(1)浏览器地址栏网址使用斜杆/;
(2)windows文件浏览器上使用反斜杠\;
(3)出现在htmlurl()属性中的路径,指定的路径是网络路径,所以必须用斜杆/;
<divstyle="background-image:url(/Image/Control/title.jpg); background-repeat:repeat-x;padding:10px10px10px10px"></div> //如果url后面用反斜杠,就不会显示任何背景
(4)出现在普通字符串中的路径,如果代表的是windows文件路径,则使用斜杆/和反斜杠\是一样的;如果代表的是网络文件路径,则必须使用斜杆/;
<imgsrc=".\Image/Control/ding.jpg"/> //本地文件路径,/和\是等效的 <imgsrc="./Image\Control\cai.jpg"/> <imgsrc="http://blog.jb51.net/wp-content/themes/MK/images/thumbnail/0.jpg"/> //网络文件路径,一定要使用斜杆/
斜杆/和反斜杠\的区别基本上就是这些了,下面再讨论一下相对路径和绝对路径。
./SRC/这样写表示,当前目录中的SRC文件夹; ../SRC/这样写表示,当前目录的上一层目录中SRC文件夹; /SRC/这样写表示,项目根目录(可以只磁盘根目录,也可以指项目根目录,具体根据实际情况而定)