这几天做项目,遇到一些关于文件路径的问题在这里做个总结。
- 一般来说在windows操作系统中文件路径都是使用反斜杠/ 来作为目录分隔,比如有张图片是放在F盘的图片文件夹下,那文件路径就是F:/图片/201422544.jpg。(在这里有一点需要注意下,由于现在操作系统一直在发展和完善,windows操作系统中使用斜杠/和反斜杠/作为文件分隔已经没有太大的差别的。以上面的图片路径为例,同样可以使用斜杠来作为目录分隔:F:/图片/201422544.jpg)
- 在unix系统中,则是使用斜杠/来作为目录分隔
- 由于web遵循unix命名,所以URL地址也是使用斜杠/来作为目录分隔,比如有个图片在网站中的地址是shiyousan.com/Content/images/article_meta.png,这里URL就是使用斜杠/作为目录分隔(同样的,由于技术不断发展,现在URL地址目录也可以使用反斜杠来作为目录分隔。)
总结上面的几点,一般windows系统中文件路径常使用反斜杠/作为目录分隔,而web中url则使用斜杠/,虽然很多时候反斜杠和斜杠并不会有太大的影响,但是毕竟这已经成为一种默认格式。
PS:这里要特别注意火狐浏览器不识别带有反斜杠"/"的URL地址,谷歌浏览器之前也不支持,不过现在已经修复并支持了。
但是以下有两种特殊情况:
第一种情况:就是在URL中斜杠和反斜杠混用。假设有一个图片文件article_meta.png在服务器上路径是F:/网站程序/Content/images/article_meta.png中,那么要想在别的网站上显示这个图片,那么HTML代码应该是:
<img src="https://shiyousan.com/Content/images/article_meta.png" alt="test" />。
但是如果地址为:
<img src="https://shiyousan.com/Content/images/article_meta.png" alt="test" />
其中URL中有部分斜杠/被换成反斜杠/,但是照样没有任何影响并可以正确显示图片。
第二种情况:css样式中本人建议不要使用斜杠和反斜杠混用,由于在CSS hack中反斜杠/,是被作为不同浏览器之间处理样式兼容的特殊符号(css hack:一种处理不同浏览器之间对css兼容问题的编程技巧,详细可在网上搜索相关资料),所以混用斜杠会造成无法获取正确的结果,最好还是按照常规的用法。比如设置一个div的背景图片样式的HTML代码如下:
<div style="min-height:200px;min-width:200px;background-image:url(https://shiyousan.com/Content/images/article_meta.png);">斜杠</div>
如果这个时候使用了如下代码是无法显示出背景图片的:
<div style="min-height:200px;min-width:200px;background-image:url(https://shiyousan.com/Content/images/article_meta.png);">反斜杠</div>
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/98287.html