以双斜杠//开头的URL – 依赖协议的URL

原文:以双斜杠//开头的URL – 依赖协议的URL

不知道大家有没有见过下面这种 url 写法:

<img src="//domain.com/img/logo.png">
img 中的url是以双斜杠“//”开头的,这种写法有特殊的用途,它会判断当前的页面协议是http 还是 https 来决定请求 url 的协议。防止IE下出现“This Page Contains Both Secure and Non-Secure Items”的报错。


但是当你浏览本地文件的时候,它会解析为 file:// 协议。这种特性可以用来加载CDN:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"></script>
也适用于CSS:

.omgomg { background: url(//websbestgifs.net/kittyonadolphin.gif); }
注意:如果在IE7,IE8中使用 <link> 和 @import 引入 CSS 的时候,会下载两次 CSS 文件。

参考:http://www.paulirish.com/2010/the-protocol-relative-url/

原文地址:https://www.cnblogs.com/lonelyxmas/p/8778438.html

时间: 2024-08-08 18:13:37

以双斜杠//开头的URL – 依赖协议的URL的相关文章

Html-双斜杠//开头的URL(依赖协议的URL)

今天看京东HTTPS,发现链接都是这种 <a href="//chaoshi.jd.com">京东超市</a> URL是以双斜杠"//"开头的,这种写法有特殊的用途,它会判断当前的页面协议是http 还是 https 来决定请求 url 的协议.防止IE下出现"This Page Contains Both Secure and Non-Secure Items"的报错. 但是当你浏览本地文件的时候,它会解析为 file:

网络资源路径的双斜杠//和双反斜杠\\的区别

1 斜杠"/"是URL地址中用到的分隔符:对应地,双斜杠用在网络域名访问中,是协议和主机名或IP地址之间的分隔符,以双斜杠//开头的URL是依赖协议的URL表示形式,URL格式:协议://域名或ip/请求文件路径/文件名. 如百度的网址:https://www.baidu.com/.URL默认以斜杠"/"结尾,而没有给出文件名的情况下,URL引用路径中最后一个目录中的默认文件(通常对应于主页). 2 反斜杠"\"是Windows系统文件目录结构使

url前面双斜杠、单斜杠、无斜杠、点+单斜杠的总结

本来只是一个绝对url和相对url的简单问题,但实际使用中会碰到一些不常见的,比如双斜杠,经常不用竟然忘了,做一下总结.可以参考一下这篇文章 1.url前面是双斜杠(//mljr.com/car.html) 双斜杠是相对协议进行url转换的,如果当前页使用的是https协议,那么转换后的url就是https://mljr.com/car.html 2.url前面是单斜杠(/newcar.html)  单斜杠是相对服务器根目录进行url转换的 3.无斜杠和点+斜杠  对这两个目前认知是一样的,都是

关于文件路径的正反斜杠(&quot;/ \&quot;)和双斜杠(&quot;\\&quot;)问题

1.C文件路径为什么要用双斜杠? 因为" \ "在 C/C++/C# 中是转义前导字符,例如" \n "代表换行.如果路径中刚好有类似转义字符开头的,那么就会引起问题,所以路径中的 \ 必须用 \\ 的形式. 2.Windows的路径中表示文件层级为什么会用反斜杠「\」,而UNIX系统都用斜杠「/」?Windows 用反斜杠(“\”)的历史来自 DOS,而 DOS 的另一个传统是用斜杠(“/”)表示命令行参数,比如: cd %SystemDrive% dir /s

关于文件路径的反斜杠正斜杠和双斜杠问题

标签: c 文件路径 绝对路径 相对路径 斜杠 it 分类: C 和OpenCV 1 C文件路径为什么要用双斜杠 因为 \ 在 C/C++/C# 中是转义前导字符,例如 \n 代表换行. 如果路径中刚好有类似转义字符开头的,那么就会引起问题,所以路径中的 \ 必须用 \\ 的形式. 2 Windows的路径中表示文件层级为什么会用反斜杠「\」,而UNIX系统都用斜杠「/」? Windows 用反斜杠("\")的历史来自 DOS,而 DOS 的另一个传统是用斜杠("/"

去掉双斜杠注释

题目描述 将C程序代码中的双斜杠注释去掉. 输入 输入数据中含有一些符合C++语法的代码行.需要说明的是,为了方便编程,规定双斜杠注释内容不含有双引号,源程序中没空行. 输出 输出不含有双斜杠注释的C++代码,除了注释代码之外,原语句行格式不变. 样例输入 //====================== // simplest program //====================== #include using namespace std; //-------------------

HTTP协议之url详解

HTTP使用统一资源标识符(Uniform Resource Identifiers, URI)来传输数据和建立连接.URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息 URL,全称是UniformResourceLocator, 中文叫统一资源定位符,是互联网上用来标识某一处资源的地址. 以下面这个URL为例,介绍下普通URL的各部分组成: http://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page

nginx之旅(第五篇):URL重写介绍、URL重写场景、URL重写语法

nginx之旅(第五篇):URL重写 一.URL重写介绍 URL重写是指将一个URL请求重新写成网站可以处理的另一个URL的过程.这样说可能不是很好理解,举个例子来说明一下,在开发中可能经常遇到这样的需求,比如通过浏览器请求的http://localhost:8080/getUser?id=1,但是需要通过SEO优化等等原因,需要把请求的地址重写为http://localhost:8080/getUser/1这样的URL,从而符合需求或者更好的被网站阅读. 当遇到这种请求的时候,就需要使用到Ur

js获取页面URL地址,判断URL是否包含具体值

window.location.pathname //设置或获取对象指定的文件名或路径window.location.href //设置或获取整个 URL 为字符串window.location.port //设置或获取与 URL 关联的端口号码window.location.protocol //设置或获取 URL 的协议部分window.location.hash //设置或获取 href 属性中在井号"#"后面的分段window.location.host //设置或获取 loc